描述
EnumForms函数枚举指定打印机支持的表单。
C++ 语法
BOOL EnumForms( __in HANDLE hPrinter, __in DWORD Level, __out LPBYTE pForm, __in DWORD cbBuf, __out LPDWORD pcbNeeded, __out LPDWORD pcReturned ); |
PowerBASIC 语法
FUNCTION EnumForms ( _ BYVAL hPrinter AS DWORD, _ BYVAL Level AS DWORD, _ BYREF pForm AS ANY, _ BYVAL cbBuf AS DWORD, _ BYREF pcbNeeded AS DWORD, _ BYREF pcReturned AS DWORD _ ) AS LONG |
参数
hPrinter
[in]处理表单应列举的打印机。使用OpenPrinter或AddPrinter功能来检索打印机句柄。
Level
[in]指定pForm指向的结构的版本。此值必须为1或2。
pForm
[out]指向一个或多个FORM_INFO_1结构或指向一个或多个FORM_INFO_2结构的指针。所有的结构将具有相同的水平。
cbBuf
[in]指定pForm指向的缓冲区的大小(以字节为单位)。
pcbNeeded
[out]指向一个变量的指针,该变量接收复制到pForm指向的数组的字节数(如果操作成功)或所需字节数(如果由于cbBuf太小而失败)。
pcReturned
[out]指向一个变量的指针,该变量接收复制到pForm指向的数组中的结构数量。
返回值
如果函数成功,则返回值为非零值。
如果函数失败,返回值为零。
备注
如果呼叫者是远程的,并且水平为2,返回的FORM_INFO_2结构的StringType值将始终为STRING_LANGPAIR。
在Windows Vista中,当hPrinter引用远程打印服务器或打印服务器托管的打印机时,从本地缓存中检索EnumForms返回的表单数据,并且至少有一个打开的连接到远程打印服务器上的打印机。在所有其他配置中,表单数据从远程打印服务器查询。
引用文件 #INCLUDE Once
WinSpool.inc(包括Windows.inc)