typedef struct _jobstruct {
WORD pjId; /* job ID */
WORD pjUsername; /* submitting user name (offset) */
WORD pjParms; /* implementation string (offset) */
WORD pjPosition; /* position of job in the queue */
WORD pjStatus; /* job status */
DWORD pjSubmitted; /* time when job was submitted */
/* (from 1970-1-1 in seconds) */
DWORD pjSize; /* job size in bytes */
/* (-1L means not available) */
WORD pjCopies; /* number of copies*/
/* (0 means not available) */
WORD pjComment; /* comment for this job (offset) */
} JOBSTRUCT;
The JOBSTRUCT structure contains information about print jobs.
pjId
Specifies the job identifier.
pjUsername
Specifies the offset (relative to the beginning of the QUEUESTRUCT structure containing this JOBSTRUCT structure) to the submitting user name.
pjParms
Specifies the offset (relative to the beginning of the QUEUESTRUCT structure containing this JOBSTRUCT structure) to the implementation string.
pjPosition
Specifies the position of job in the queue.
pjStatus
Specifies the job status. It can be a combination of one Queue Status value and one Device Status value, as described by the following.
Queue Status
Value | Meaning |
WNPRJ_QS_QUEUED (0x0000) | Job queued. |
WNPRJ_QS_PAUSED (0x0001) | Job paused. |
WNPRJ_QS_SPOOLING (0x0002) | Job spooling. |
WNPRJ_QS_PRINTING (0x0003) | Job printing. |
Device Status
Value | Meaning |
WNPRJ_DS_COMPLETE (0x0008) | Complete. |
WNPRJ_DS_INTERV (0x0010) | Intervention required. |
WNPRJ_DS_ERROR (0x0020) | Printer error. |
WNPRJ_DS_DESTOFFLIN (0x0040) | Printer offline. |
WNPRJ_DS_DESTPAUSED (0x0080) | Printer paused. |
WNPRJ_DS_NOTIFY (0x0100) | Notify owner. |
WNPRJ_DS_DESTNOPAPER (0x0200) | Printer out of paper. |
WNPRJ_DS_DESTFORMCHG (0x0400) | Form change required. |
WNPRJ_DS_DESTCRTCHG (0x0800) | cartridge change required. |
WNPRJ_DS_DESTPENCHG (0x1000) | Pen change required. |
pjSubmitted
Specifies the time when job was submitted in seconds since January 1, 1970.
pjSize
Specifies the job size in bytes. If it is -9, the size is not available.
pjCopies
Specifies the number of copies. If it is zero, the number is not available.
pjComment
Specifies the offset (relative to the beginning of the QUEUESTRUCT structure containing this JOBSTRUCT structure) to the comment for this job.
For more information about the mechanism that stores the strings referenced by JOBSTRUCT, see Section 5.2.6, “Passing Buffers,” earlier in this chapter. For example, assuming that lpQS is the LPQUEUESTRUCT returned by WNetLockQueueData, the expression
(LPSTR) lpQS + lpQS -> pqComment
points to the queue comment. All offsets are relative to the beginning of the buffer, not the beginning of an individual JOBSTRUCT structure.