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

EnumPrinterKey

Previous pageReturn to chapter overviewNext page

描述

 

EnumPrinterKey函数枚举指定打印机的指定键的子项。

 

打印机数据存储在注册表中。在枚举打印机数据时,不要调用可能更改数据的注册表功能。

 

C++ 语法

 

DWORD EnumPrinterKey(

__in  HANDLE hPrinter,

__in  LPCTSTR pKeyName,

__out LPTSTR pSubkey,

__in  DWORD cbSubkey,

__out LPDWORD pcbSubkey

);

 

PowerBASIC 语法

 

FUNCTION EnumPrinterKeyA ( _

BYVAL hPrinter AS DWORD, _

BYREF pKeyName AS ASCIIZ, _

BYREF pSubkey AS ASCIIZ, _

BYVAL cbSubkey AS DWORD, _

BYREF pcbSubkey AS DWORD _

) AS LONG

 

Unicode版本:

 

FUNCTION EnumPrinterKeyW ( _

BYVAL hPrinter AS DWORD, _

BYREF pKeyName AS WSTRINGZ, _

BYREF pSubkey AS WSTRINGZ, _

BYVAL cbSubkey AS DWORD, _

BYREF pcbSubkey AS DWORD _

) AS LONG

 

参数

 

hPrinter

 

[in]处理函数枚举子项的打印机。使用OpenPrinterAddPrinter功能来检索打印机句柄。

 

pKeyName

 

[in]指向指定包含要枚举的子项的键的以空值终止的字符串的指针。使用反斜杠“\\”字符作为分隔符来指定具有一个或多个子项的路径。EnumPrinterKey枚举密钥的所有子项,但不枚举这些子项的子项。

 

如果pKeyName为空字符串(“”),则EnumPrinterKey列举打印机的顶级密钥。如果pKeyName为NULL,则EnumPrinterKey返回ERROR_INVALID_PARAMETER。

 

pSubkey

 

[out]指向接收一个以零结尾的子项名称数组的缓冲区的指针。数组由两个空字符终止。

 

cbSubkey

 

[in]指定由pSubkey指向的缓冲区的大小(以字节为单位)。如果将cbSubkey设置为零,则pcbSubkey参数返回所需的缓冲区大小。

 

pcbSubkey

 

[out]指向接收在pSubkey缓冲区中检索到的字节数的变量的指针。如果cbSubkey指定的缓冲区大小太小,则函数返回ERROR_MORE_DATA,pcbSubkey指示所需的缓冲区大小。

 

返回值

 

如果函数成功,则返回值为非零值。

 

如果函数失败,返回值为零。

 

引用文件 #INCLUDE Once

 

WinSpool.inc(包括Windows.inc)