EnumPrintProcessorDatatypesA 函数 (winspool.h)

打印处理器的 EnumPrintProcessorDatatypes 函数枚举打印处理器支持的数据类型。

语法

BOOL EnumPrintProcessorDatatypesA(
  [in, optional]  LPSTR   pName,
  [in]            LPSTR   pPrintProcessorName,
                  DWORD   Level,
  [out, optional] LPBYTE  pDatatypes,
                  DWORD   cbBuf,
  [out]           LPDWORD pcbNeeded,
  [out]           LPDWORD pcReturned
);

参数

[in, optional] pName

调用方提供的指针指向表示安装打印处理器的服务器的名称的字符串。 如果 为 NULL,则服务器为本地系统。

[in] pPrintProcessorName

调用方提供的指针,指向表示打印处理器名称的字符串。

Level

调用方提供的值,该值指示要在 pDatatypes 指向的缓冲区中返回的结构的类型。 此值必须为 1,表示结构DATATYPES_INFO_1。

[out, optional] pDatatypes

调用方提供的指向缓冲区的指针,用于接收DATATYPES_INFO_1结构的数组,后跟一组表示数据类型名称的字符串。 Microsoft Windows SDK文档中介绍了DATATYPES_INFO_1结构。 结构成员 pName 的类型必须为 LPWSTR。

cbBuf

调用方提供的值表示 pDatatypes 指向的缓冲区的大小(以字节为单位)。

[out] pcbNeeded

调用方提供的指针指向一个位置,用于接收 pDatatypes 指向的缓冲区所需的最小大小。

[out] pcReturned

调用方提供的指向位置的指针,用于接收 pDatatypes 指向的缓冲区中返回的DATATYPES_INFO_1结构数。

返回值

如果操作成功,函数应返回 TRUE。 如果操作失败,函数应调用 SetLastError 来设置错误代码,然后返回 FALSE

注解

导出 EnumPrintProcessorDatatypes 函数需要打印处理器。 本地打印提供程序在初始化期间调用 函数。 当应用程序调用后台处理程序的同一函数版本时,也会调用 该函数。

函数必须返回DATATYPES_INFO_1结构的数组,其中每个结构指向表示数据类型的字符串。 实际字符串还必须包含在缓冲区中的结构数组之后。 有关 示例,请参阅示例打印处理器

函数应返回 (返回的DATATYPES_INFO_1结构数,即 pcReturned 指向的位置中) 支持的数据类型数。

函数应返回 由板Needed 指向的位置中所需的最小缓冲区大小。 如果提供的缓冲区太小,函数应指定 一个为“ERROR_INSUFFICIENT_BUFFER”的值,并将错误代码设置为“ERROR_INSUFFICIENT_BUFFER”,并返回 FALSE

要求

要求
目标平台 桌面
标头 winspool.h (包括 Winspool.h)