PrintJobStatus PrintJobStatus PrintJobStatus PrintJobStatus Enum

Определение

Указывает текущее состояние задания печати в очереди.Specifies the current status of a print job in a print queue.

Это перечисление имеет атрибут FlagsAttribute, который разрешает побитовое сочетание значений его элементов.

public enum class PrintJobStatus
[System.Flags]
public enum PrintJobStatus
type PrintJobStatus = 
Public Enum PrintJobStatus
Наследование
PrintJobStatusPrintJobStatusPrintJobStatusPrintJobStatus
Атрибуты

Поля

Blocked Blocked Blocked Blocked 512

Ошибка, которая, вероятно, возникла при выполнении предыдущего задания из очереди, заблокировала задание печати.An error condition, possibly on a print job that precedes this one in the queue, blocked the print job.

Completed Completed Completed Completed 4096

Задание печати готово, включая все виды послепечатной обработки.The print job is complete, including any post-printing processing.

Deleted Deleted Deleted Deleted 256

Задание печати удалено из очереди (обычно после печати).The print job was deleted from the queue, typically after printing.

Deleting Deleting Deleting Deleting 4

Задание печати находится в процессе удаления.The print job is in the process of being deleted.

Error Error Error Error 2

Задание печати находится в состоянии ошибки.The print job is in an error state.

None None None None 0

У задания печати нет определенного состояния.The print job has no specified state.

Offline Offline Offline Offline 32

Принтер отключен.The printer is offline.

PaperOut PaperOut PaperOut PaperOut 64

В принтере нет бумаги необходимого размера.The printer is out of the required paper size.

Paused Paused Paused Paused 1

Задание печати приостановлено.The print job is paused.

Printed Printed Printed Printed 128

Задание напечатано.The print job printed.

Printing Printing Printing Printing 16

Идет печать задания.The print job is now printing.

Restarted Restarted Restarted Restarted 2048

Задание печати было заблокировано и перезапущено.The print job was blocked but has restarted.

Retained Retained Retained Retained 8192

Задание печати сохранено в очереди после печати.The print job is retained in the print queue after printing.

Spooling Spooling Spooling Spooling 8

Выполняется буферизация задания печати.The print job is spooling.

UserIntervention UserIntervention UserIntervention UserIntervention 1024

Для исправления ошибки принтеру требуется вмешательство пользователя.The printer requires user action to fix an error condition.

Примеры

В следующем примере показано, как это перечисление используется при диагностике проблемы, связанной с заданием печати.The following example shows how to use this enumeration when diagnosing a problem with a print job.

// Check for possible trouble states of a print job using the flags of the JobStatus property
static void SpotTroubleUsingJobAttributes (PrintSystemJobInfo^ theJob) 
{
   if ((theJob->JobStatus & PrintJobStatus::Blocked) == PrintJobStatus::Blocked)
   {
      Console::WriteLine("The job is blocked.");
   }
   if (((theJob->JobStatus & PrintJobStatus::Completed) == PrintJobStatus::Completed)
      || 
      ((theJob->JobStatus & PrintJobStatus::Printed) == PrintJobStatus::Printed))
   {
      Console::WriteLine("The job has finished. Have user recheck all output bins and be sure the correct printer is being checked.");
   }
   if (((theJob->JobStatus & PrintJobStatus::Deleted) == PrintJobStatus::Deleted)
      || 
      ((theJob->JobStatus & PrintJobStatus::Deleting) == PrintJobStatus::Deleting))
   {
      Console::WriteLine("The user or someone with administration rights to the queue has deleted the job. It must be resubmitted.");
   }
   if ((theJob->JobStatus & PrintJobStatus::Error) == PrintJobStatus::Error)
   {
      Console::WriteLine("The job has errored.");
   }
   if ((theJob->JobStatus & PrintJobStatus::Offline) == PrintJobStatus::Offline)
   {
      Console::WriteLine("The printer is offline. Have user put it online with printer front panel.");
   }
   if ((theJob->JobStatus & PrintJobStatus::PaperOut) == PrintJobStatus::PaperOut)
   {
      Console::WriteLine("The printer is out of paper of the size required by the job. Have user add paper.");
   }
   if (((theJob->JobStatus & PrintJobStatus::Paused) == PrintJobStatus::Paused)
      || 
      ((theJob->HostingPrintQueue->QueueStatus & PrintQueueStatus::Paused) == PrintQueueStatus::Paused))
   {
      HandlePausedJob(theJob);
      //HandlePausedJob is defined in the complete example.
   }

   if ((theJob->JobStatus & PrintJobStatus::Printing) == PrintJobStatus::Printing)
   {
      Console::WriteLine("The job is printing now.");
   }
   if ((theJob->JobStatus & PrintJobStatus::Spooling) == PrintJobStatus::Spooling)
   {
      Console::WriteLine("The job is spooling now.");
   }
   if ((theJob->JobStatus & PrintJobStatus::UserIntervention) == PrintJobStatus::UserIntervention)
   {
      Console::WriteLine("The printer needs human intervention.");
   }
};
// Check for possible trouble states of a print job using the flags of the JobStatus property
internal static void SpotTroubleUsingJobAttributes(PrintSystemJobInfo theJob)
{
    if ((theJob.JobStatus & PrintJobStatus.Blocked) == PrintJobStatus.Blocked)
    {
        Console.WriteLine("The job is blocked.");
    }
    if (((theJob.JobStatus & PrintJobStatus.Completed) == PrintJobStatus.Completed)
        || 
        ((theJob.JobStatus & PrintJobStatus.Printed) == PrintJobStatus.Printed))
    {
        Console.WriteLine("The job has finished. Have user recheck all output bins and be sure the correct printer is being checked.");
    }
    if (((theJob.JobStatus & PrintJobStatus.Deleted) == PrintJobStatus.Deleted)
        || 
        ((theJob.JobStatus & PrintJobStatus.Deleting) == PrintJobStatus.Deleting))
    {
        Console.WriteLine("The user or someone with administration rights to the queue has deleted the job. It must be resubmitted.");
    }
    if ((theJob.JobStatus & PrintJobStatus.Error) == PrintJobStatus.Error)
    {
        Console.WriteLine("The job has errored.");
    }
    if ((theJob.JobStatus & PrintJobStatus.Offline) == PrintJobStatus.Offline)
    {
        Console.WriteLine("The printer is offline. Have user put it online with printer front panel.");
    }
    if ((theJob.JobStatus & PrintJobStatus.PaperOut) == PrintJobStatus.PaperOut)
    {
        Console.WriteLine("The printer is out of paper of the size required by the job. Have user add paper.");
    }

    if (((theJob.JobStatus & PrintJobStatus.Paused) == PrintJobStatus.Paused)
        || 
        ((theJob.HostingPrintQueue.QueueStatus & PrintQueueStatus.Paused) == PrintQueueStatus.Paused))
    {
        HandlePausedJob(theJob);
        //HandlePausedJob is defined in the complete example.
    }

    if ((theJob.JobStatus & PrintJobStatus.Printing) == PrintJobStatus.Printing)
    {
        Console.WriteLine("The job is printing now.");
    }
    if ((theJob.JobStatus & PrintJobStatus.Spooling) == PrintJobStatus.Spooling)
    {
        Console.WriteLine("The job is spooling now.");
    }
    if ((theJob.JobStatus & PrintJobStatus.UserIntervention) == PrintJobStatus.UserIntervention)
    {
        Console.WriteLine("The printer needs human intervention.");
    }
  
}//end SpotTroubleUsingJobAttributes
' Check for possible trouble states of a print job using the flags of the JobStatus property
Friend Shared Sub SpotTroubleUsingJobAttributes(ByVal theJob As PrintSystemJobInfo)
	If (theJob.JobStatus And PrintJobStatus.Blocked) = PrintJobStatus.Blocked Then
		Console.WriteLine("The job is blocked.")
	End If
	If ((theJob.JobStatus And PrintJobStatus.Completed) = PrintJobStatus.Completed) OrElse ((theJob.JobStatus And PrintJobStatus.Printed) = PrintJobStatus.Printed) Then
		Console.WriteLine("The job has finished. Have user recheck all output bins and be sure the correct printer is being checked.")
	End If
	If ((theJob.JobStatus And PrintJobStatus.Deleted) = PrintJobStatus.Deleted) OrElse ((theJob.JobStatus And PrintJobStatus.Deleting) = PrintJobStatus.Deleting) Then
		Console.WriteLine("The user or someone with administration rights to the queue has deleted the job. It must be resubmitted.")
	End If
	If (theJob.JobStatus And PrintJobStatus.Error) = PrintJobStatus.Error Then
		Console.WriteLine("The job has errored.")
	End If
	If (theJob.JobStatus And PrintJobStatus.Offline) = PrintJobStatus.Offline Then
		Console.WriteLine("The printer is offline. Have user put it online with printer front panel.")
	End If
	If (theJob.JobStatus And PrintJobStatus.PaperOut) = PrintJobStatus.PaperOut Then
		Console.WriteLine("The printer is out of paper of the size required by the job. Have user add paper.")
	End If

	If ((theJob.JobStatus And PrintJobStatus.Paused) = PrintJobStatus.Paused) OrElse ((theJob.HostingPrintQueue.QueueStatus And PrintQueueStatus.Paused) = PrintQueueStatus.Paused) Then
		HandlePausedJob(theJob)
		'HandlePausedJob is defined in the complete example.
	End If

	If (theJob.JobStatus And PrintJobStatus.Printing) = PrintJobStatus.Printing Then
		Console.WriteLine("The job is printing now.")
	End If
	If (theJob.JobStatus And PrintJobStatus.Spooling) = PrintJobStatus.Spooling Then
		Console.WriteLine("The job is spooling now.")
	End If
	If (theJob.JobStatus And PrintJobStatus.UserIntervention) = PrintJobStatus.UserIntervention Then
		Console.WriteLine("The printer needs human intervention.")
	End If

End Sub 'end SpotTroubleUsingJobAttributes

Комментарии

Это перечисление используется главным образом в качестве значения JobStatus свойство.This enumeration is used primarily as the value of the JobStatus property.

Применяется к

Дополнительно