JOB_INFO_4 结构

描述与作业关联的一组完整值,并支持以 64 位表示的大小的大型假脱机文件。

语法

typedef struct _JOB_INFO_4 {
  DWORD                JobId;
  LPTSTR               pPrinterName;
  LPTSTR               pMachineName;
  LPTSTR               pUserName;
  LPTSTR               pDocument;
  LPTSTR               pNotifyName;
  LPTSTR               pDatatype;
  LPTSTR               pPrintProcessor;
  LPTSTR               pParameters;
  LPTSTR               pDriverName;
  LPDEVMODE            pDevMode;
  LPTSTR               pStatus;
  PSECURITY_DESCRIPTOR pSecurityDescriptor;
  DWORD                Status;
  DWORD                Priority;
  DWORD                Position;
  DWORD                StartTime;
  DWORD                UntilTime;
  DWORD                TotalPages;
  DWORD                Size;
  SYSTEMTIME           Submitted;
  DWORD                Time;
  DWORD                PagesPrinted;
  LONG                 SizeHigh;
} JOB_INFO_4, *PJOB_INFO_4;

成员

JobId

作业标识符值。

pPrinterName

指向以 null 结尾的字符串的指针,该字符串指定为其后台打印作业的打印机的名称。

pMachineName

指向以 null 结尾的字符串的指针,该字符串指定创建打印作业的计算机的名称。

pUserName

指向以 null 结尾的字符串的指针,该字符串指定拥有打印作业的用户的名称。

pDocument

指向以 null 结尾的字符串的指针,该字符串指定打印作业的名称 (例如,“MS-WORD: Review.doc”) 。

pNotifyName

指向以 null 结尾的字符串的指针,该字符串指定在打印作业时或在打印作业时发生错误时应收到通知的用户的名称。

pDatatype

指向以 null 结尾的字符串的指针,该字符串指定用于记录打印作业的数据类型。

pPrintProcessor

指向以 null 结尾的字符串的指针,该字符串指定应用于打印作业的打印处理器的名称。

pParameters

指向以 null 结尾的字符串的指针,该字符串指定打印处理器参数。

pDriverName

指向以 null 结尾的字符串的指针,该字符串指定用于处理打印作业的打印机驱动程序的名称。

pDevMode

指向 DEVMODE 结构的指针,该结构包含打印机驱动程序的设备初始化和环境数据。

pStatus

指向以 null 结尾的字符串的指针,该字符串指定打印作业的状态。 应在 状态 之前检查此成员,如果 pStatusNULL,则状态由 Status 成员的内容定义。

pSecurityDescriptor

此成员的值为 NULL。 此版本不支持检索和设置文档安全描述符。

Status

作业状态。 此成员可以是以下一个或多个值:

含义
JOB_STATUS_BLOCKED_DEVQ 驱动程序无法打印作业。
JOB_STATUS_DELETED 作业已删除。
JOB_STATUS_DELETING 正在删除作业。
JOB_STATUS_ERROR 错误与作业相关联。
JOB_STATUS_OFFLINE 打印机处于脱机状态。
JOB_STATUS_PAPEROUT 打印机没有纸张。
JOB_STATUS_PAUSED 作业已暂停。
JOB_STATUS_PRINTED 作业已打印。
JOB_STATUS_PRINTING 作业正在打印。
JOB_STATUS_RESTART 作业已重启。
JOB_STATUS_SPOOLING 作业正在假脱机。
JOB_STATUS_USER_INTERVENTION 打印机出现错误,要求用户执行某些操作。

在 Windows XP 及更高版本的 Windows 中,还可以使用以下值:

含义
JOB_STATUS_COMPLETE 作业已发送到打印机,但可能尚未打印。 有关更多信息,请参见备注。
JOB_STATUS_RETAINED 打印后,作业已保留在打印队列中。

优先级

作业优先级。 此成员可以是以下值之一,也可以介于 1 到 99 (MIN_PRIORITY 到 MAX_PRIORITY) 之间。

含义
MIN_PRIORITY 最低优先级。
MAX_PRIORITY 最大优先级。
DEF_PRIORITY 默认优先级。

位置

作业在打印队列中的位置。

StartTime

可以打印作业的最早时间。

UntilTime

可打印作业的最近时间。

TotalPages

作业所需的页数。 如果打印作业不包含页分隔信息,则此值可能为零。

大小

作业大小较小的四个字节(以字节为单位)。 另请参阅下面的 SizeHigh 成员。

已提交

一个 SYSTEMTIME 结构,指定提交作业的时间。

此时间值采用世界时坐标 (UTC) 格式。 在显示之前,应将其转换为本地时间值。 可以使用 FileTimeToLocalFileTime 函数执行转换。

时间

自作业开始打印以来经过的总时间(以毫秒为单位)。

PagesPrinted

已打印的页数。 如果打印作业不包含页分隔信息,则此值可能为零。

SizeHigh

作业大小(以字节为单位)的四个字节。 另请参阅上面的 Size 成员。

备注

不支持 TrueEndOfJob 的端口监视器将在作业提交到打印机后立即将作业设置为JOB_STATUS_PRINTED。

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Winspool.h
Unicode 和 ANSI 名称
_JOB_INFO_4W (unicode) 和 _JOB_INFO_4A (ANSI)

另请参阅

打印

打印后台处理程序 API 结构

DEVMODE

EnumJobs

GetJob

SetJob