DrvSplDeviceCaps 函数(winddiui.h)
打印机接口 DLL 的 DrvSplDeviceCaps 函数查询打印机的功能。
语法
DWORD DrvSplDeviceCaps(
HANDLE hPrinter,
[in] PWSTR pszDeviceName,
WORD Capability,
[out, optional] PVOID pOutput,
DWORD cchBufSize,
[in, optional] PDEVMODE pDevmode
);
参数
hPrinter
向打印机提供调用方句柄。
[in] pszDeviceName
调用方提供的指向包含打印机名称的 Unicode 字符串的指针。
Capability
调用方提供的位标志,指示查询的功能。 (标志在头文件 wingdi.h.中定义)此函数不需要支持所有 DC_XXX 标志,但它必须支持下表中列出的标志。
旗 | 定义 |
---|---|
DC_MEDIAREADY | pOutput 参数指向函数应用字符串缓冲区数组填充的缓冲区,每个缓冲区长度为 64 个字符。 每个数组元素应包含一个以 NULL 结尾的字符串,表示可用于使用的纸张窗体的名称。 函数的返回值应为返回数组中的元素数。 如果 pOutputNULL,则该函数应只返回所需的数组元素数。 |
DC_PAPERNAMES | pOutput 参数指向函数应用字符串缓冲区数组填充的缓冲区,每个缓冲区长度为 64 个字符。 每个数组元素应包含一个以 NULL 结尾的字符串,表示纸张窗体的名称。 函数的返回值应为返回数组中的元素数。 如果 pOutputNULL,则该函数应只返回所需的数组元素数。 |
[out, optional] pOutput
调用方提供的指针指向接收函数提供的信息的缓冲区。 缓冲区的使用取决于 功能 参数的值。 调用方负责分配和释放此缓冲区。
cchBufSize
pOutput 参数指向的缓冲区的调用方提供的大小(以字符为单位)。
[in, optional] pDevmode
调用方提供的指向描述当前打印作业特征的 DEVMODEW 结构的指针。 如果 NULL,则该函数应使用驱动程序的内部默认 DEVMODEW 结构。
返回值
返回值取决于 功能 参数。 如果 功能 指示驱动程序不支持的功能,或者遇到错误,该函数应返回GDI_ERROR。
言论
有关 DC_XXX 标志的说明,请参阅 DrvDeviceCapabilities。
必须在 .def 文件中将此函数定义为 DrvSplDeviceCaps @ 254,因为后台处理程序使用序号 254 获取驱动程序函数指针。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | winddiui.h (包括 Winddiui.h) |