DrvDocumentPropertySheets - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// winddiui.h

LONG DrvDocumentPropertySheets(
  [in, optional] PPROPSHEETUI_INFO pPSUIInfo,
                 LPARAM            lParam
);
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (nf-winddiui-drvdocumentpropertysheets)

Description

A printer interface DLL's DrvDocumentPropertySheets function is responsible for creating property sheet pages that describe a print document's properties.

Parameters

pPSUIInfo [in, optional]

Caller-supplied pointer to a PROPSHEETUI_INFO structure. Can be NULL (see the following Remarks section).

lParam

Caller-supplied integer value that is dependent on the contents of the Reason member of the PROPSHEETUI_INFO structure, as listed in the following table.

Reason value Definition of lParam
PROPSHEETUI_REASON_INIT Pointer to a DOCUMENTPROPERTYHEADER structure.
All other reason values See the description of the lParam parameter for the PFNPROPSHEETUI function type. (The DOCUMENTPROPERTYHEADER structure's address is contained in the lParamInit member of the PROPSHEETUI_INFO structure.)

Return value

If pPSUIInfo is NULL, and if either lParam -> fMode is zero or lParam -> pdmOut is NULL, this function should return the size, in bytes, of the printer's DEVMODEW structure. Otherwise, the function's return value is the same as that described in the ReturnValue section of the PFNPROPSHEETUI function type. For more information, see the Remarks section.

Remarks

All printer interface DLLs must provide a DrvDocumentPropertySheets function, which is defined using the PFNPROPSHEETUI function type. The function's purpose is to call the ComPropSheet function, provided by CPSUI, to specify property sheet pages containing user-modifiable properties for print documents.

If the value received for the pPSUIInfo parameter is not NULL, the NT-based operating system print spooler is calling the function indirectly, through CPSUI. The following rules apply:

If the value received for the pPSUIInfo parameter is NULL, the print spooler is calling the function directly, without going through CPSUI. In this case, the lParam parameter contains the address of a DOCUMENTPROPERTYHEADER structure, and the following rules apply:

See also

DOCUMENTPROPERTYHEADER

DrvDevicePropertySheets

IPrintOemUI::DocumentPropertySheets