EnumJobs

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
Pointer to an array of either JOB_INFO_1 or JOB_INFO_2 structures.
cbBuf
Specifies the size, in bytes, of the array pJob.
pcbNeeded
Pointer 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
Pointer 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.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in winspool.h.
  Import Library: Use winspool.lib.
  Unicode: Implemented as Unicode and ANSI versions on Windows NT.

See Also

Printing and Print Spooler Overview, Printing and Print Spooler Functions, GetJob, JOB_INFO_1, JOB_INFO_2, OpenPrinter, SetJob