勇芳软件工作室.汉化:  Printing > Print Spooler API > Print Spooler API Reference > Print Spooler API Functions >

EnumForms

Previous pageReturn to chapter overviewNext page

描述

 

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]处理表单应列举的打印机。使用OpenPrinterAddPrinter功能来检索打印机句柄。

 

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)