The EnumJobs function initializes an array of either JOB_INFO_1 or JOB_INFO_2 structures with data describing the specified print jobs for the specified printer.
BOOL EnumJobs(
HANDLE hPrinter, | // handle to printer object |
DWORD FirstJob, | // location of first job in print queue to enumerate |
DWORD NoJobs, | // number of jobs to enumerate |
DWORD Level, | // structure level |
LPBYTE pJob, | // pointer to structure array |
DWORD cbBuf, | // size of array, in bytes |
LPDWORD pcbNeeded, | // addr. of variable with no. of bytes copied (or required) |
LPDWORD pcReturned | // addr. of variable with no. of job info. structures copied |
); |
Parameters
hPrinter
Handle to the printer object whose print jobs the function will enumerate.
FirstJob
Specifies the zero-based position within the print queue of the first print job to enumerate. For example, a value of 0 specifies that enumeration should begin at the first print job in the print queue; a value of 9 specifies that enumeration should begin at the tenth print job in the print queue.
NoJobs
Specifies the total number of print jobs to enumerate.
Level
Specifies whether the function should use JOB_INFO_1 or JOB_INFO_2 structures to store data for the enumerated jobs. A value of 1 specifies that the JOB_INFO_1 structure should be used; a value of 2 specifies that the JOB_INFO_2 structure should be used.
pJob
Points to an array of either JOB_INFO_1 or JOB_INFO_2 structures.
cbBuf
Specifies the size, in bytes, of the array pJob.
pcbNeeded
Points to a variable that receives the number of bytes copied if the function succeeds. If the function fails, the variable receives the number of bytes required.
pcReturned
Points to a variable that receives the number of JOB_INFO_1 or JOB_INFO_2 structures that were initialized.
Return Values
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Remarks
The handle hPrinter is obtained by calling the OpenPrinter function.
The JOB_INFO_1 structure contains general print-job information; the JOB_INFO_2 structure has much more detailed information.
See Also