EngEnumForms 函数 (winddi.h)
EngEnumForms 函数枚举指定打印机支持的窗体。
语法
ENGAPI BOOL EngEnumForms(
[in] HANDLE hPrinter,
[in] DWORD Level,
[out, optional] LPBYTE pForm,
[in] DWORD cbBuf,
[out] LPDWORD pcbNeeded,
[out] LPDWORD pcReturned
);
参数
[in] hPrinter
应为其枚举窗体的打印机的句柄。 这是作为 DrvEnablePDEV 的 hDriver 参数传递的 PDEV 句柄。
[in] Level
指定 pForm 指向的结构的版本。 此值必须为 1,指示将在FORM_1_INFO结构中返回枚举窗体。
[out, optional] pForm
指向字节数组的指针,其中写入了枚举FORM_INFO_1结构。
[in] cbBuf
指定 lpbForms 的大小(以字节为单位)。
[out] pcbNeeded
指向 DWORD 的指针,如果复制成功完成,该 DWORD 接收复制到 pForm 中的字节数。 如果 pForm 太小,无法包含所有枚举表单的数据,则此 DWORD 将指定所需的字节数。
[out] pcReturned
指向 DWORD 的指针,该 DWORD 接收复制到 pForm 中的FORM_INFO_1结构的数量。
返回值
如果所有参数都有效,并且枚举的表单数据已成功复制到 pForm 中,则 EngEnumForms 将返回 TRUE。 否则,它将返回 FALSE ,并记录错误消息。 若要获取错误信息,请调用 EngGetLastError。
注解
打印机驱动程序可以调用 EngEnumForms ,让 GDI 获取特定打印机支持的表单列表。 枚举信息作为 (Microsoft Windows SDK文档中声明的FORM_INFO_1结构的数组返回,) pForm 指向。 如果 pForm 指向的数组不够大,无法容纳枚举数据,则会改为在 “吃”中返回所需的数组大小。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Windows 2000 及更高版本的 Windows 操作系统中可用。 |
目标平台 | 通用 |
标头 | winddi.h (包括 Winddi.h) |
Library | Win32k.lib |
DLL | Win32k.sys |