DrvSplDeviceCaps function (winddiui.h)
A printer interface DLL's DrvSplDeviceCaps function queries a printer for its capabilities.
Syntax
DWORD DrvSplDeviceCaps(
HANDLE hPrinter,
[in] PWSTR pszDeviceName,
WORD Capability,
[out, optional] PVOID pOutput,
DWORD cchBufSize,
[in, optional] PDEVMODE pDevmode
);
Parameters
hPrinter
Caller-supplied handle to the printer.
[in] pszDeviceName
Caller-supplied pointer to a Unicode string that contains the printer name.
Capability
Caller-supplied bit flag that indicates the capability to query for. (The flags are defined in header file wingdi.h.) This function is not required to support all of the DC_XXX flags, but it must support those listed in the following table.
Flag | Definition |
---|---|
DC_MEDIAREADY | The pOutput parameter points to a buffer that the function should fill with an array of string buffers, each 64 characters in length. Each array element should contain a NULL-terminated string representing a name for a paper form that is available for use. The function's return value should be the number of elements in the returned array. If pOutput is NULL, the function should just return the number of array elements required. |
DC_PAPERNAMES | The pOutput parameter points to a buffer that the function should fill with an array of string buffers, each 64 characters in length. Each array element should contain a NULL-terminated string representing a name for a paper form. The function's return value should be the number of elements in the returned array. If pOutput is NULL, the function should just return the number of array elements required. |
[out, optional] pOutput
Caller-supplied pointer to a buffer that receives function-supplied information. The buffer's use depends on the value of the Capability parameter. The caller is responsible for allocating and freeing this buffer.
cchBufSize
Caller-supplied size (in characters) of the buffer pointed to by the pOutput parameter.
[in, optional] pDevmode
Caller-supplied pointer to a DEVMODEW structure that describes the current print job characteristics. If NULL, the function should use the driver's internal default DEVMODEW structure.
Return value
The return value depends on the Capability parameter. If Capability indicates a capability that the driver does not support, or if an error is encountered, the function should return GDI_ERROR.
Remarks
For descriptions of the DC_XXX flags, see DrvDeviceCapabilities.
This function must be defined in the .def file as DrvSplDeviceCaps @ 254, because the spooler uses the ordinal number 254 to obtain the driver function pointer.
Requirements
Requirement | Value |
---|---|
Target Platform | Desktop |
Header | winddiui.h (include Winddiui.h) |