The DrvQueryJobAttributes function allows a printer interface DLL to specify support for such capabilities as printing multiple document pages on a physical page ("N-up" printing), printing multiple copies of each page, collating pages, and printing pages in reverse order.
BOOL DrvQueryJobAttributes( _In_ HANDLE hPrinter, _In_ PDEVMODE pDevMode, _In_ DWORD dwLevel, _Out_ LPBYTE lpAttributeInfo );
- hPrinter [in]
Caller-supplied printer handle.
- pDevMode [in]
Caller-supplied pointer to a DEVMODEW structure.
- dwLevel [in]
Caller-supplied value indicating the type of structure pointed to by lpAttributeInfo, as indicated in the following table.
dwLevel Value Structure pointed to by lpAttributeInfo
- lpAttributeInfo [out]
Caller-supplied pointer to a structure identified by dwLevel.
If the operation succeeds, the function should return TRUE. Otherwise, it should return FALSE. Returning FALSE causes the current print job to be canceled.
A printer interface DLL can optionally provide a DrvQueryJobAttributes function. If the function is provided, it should fill in the supplied structure, described by dwLevel and plAttributeInfo, to indicate the current print job's user-requested attributes (such as N-up parameters and the number of copies) and the driver's ability to support those attributes. The function is typically called by the EMF print processor, so it can determine which job attributes can be handled by the driver (or printer), and which must be handled by the print processor.
The ATTRIBUTE_INFO_4 structure is defined for Windows Vista.