PRINTER_INFO_7结构

PRINTER_INFO_7结构指定目录服务打印机信息。 将此结构与 SetPrinter 函数配合使用,在目录服务中发布打印机的数据 (DS) ,或者更新或删除打印机的已发布数据。 将此结构与 GetPrinter 函数结合使用,以确定打印机是否在 DS 中发布。

语法

typedef struct _PRINTER_INFO_7 {
  LPTSTR pszObjectGUID;
  DWORD  dwAction;
} PRINTER_INFO_7, *PPRINTER_INFO_7;

成员

pszObjectGUID

指向包含与已发布打印机关联的目录服务打印队列对象的 GUID 的 null 终止字符串的指针。 使用 GetPrinter 函数检索此 GUID。

在调用 SetPrinter 之前,请将 pszObjectGUID 设置为 NULL

dwAction

指示 SetPrinter 函数要执行的操作。 对于 GetPrinter 函数,此成员指示是否发布指定的打印机。 此成员可以是以下值的组合。

含义
DSPRINT_PENDING
0x80000000
GetPrinter:指示系统正尝试完成 SetPrinter 调用启动的发布或取消发布操作。
SetPrinter:此值无效。
DSPRINT_PUBLISH
0x00000001
SetPrinter:在 DS 中发布打印机的数据。
GetPrinter:指示打印机已发布。
DSPRINT_REPUBLISH
0x00000008
SetPrinter:取消发布打印机的 DS 数据,然后再次发布,刷新已发布打印机中的所有属性。 重新发布还会更改已发布打印机的 GUID。
GetPrinter:永不返回此值。
DSPRINT_UNPUBLISH
0x00000004
SetPrinter:从 DS 中删除打印机的已发布数据。
GetPrinter:指示打印机未发布。
DSPRINT_UPDATE
0x00000002
SetPrinter:更新 DS 中的打印机已发布数据。
GetPrinter:永不返回此值。

注解

SetPrinter 调用中使用PRINTER_INFO_7结构将打印机信息发布到目录服务。 已发布的数据包括在 SetPrinterDataEx 创建的SPLDS_SPOOLER_KEY、SPLDS_DRIVER_KEY或SPLDS_USER_KEY键下找到的指定打印机的所有值和数据。

对于 SetPrinterpszObjectGUID 应设置为 NULL。 对于 GetPrinterpszObjectGUID 返回与已发布打印机关联的目录服务打印队列对象的 GUID。 可以将此 GUID 与 Active Directory 服务接口 (ADSI) 方法来检索打印机的已发布数据。 但是,用于检索已发布数据的建议方法是调用 GetPrinterDataEx 函数。

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Winspool.h (包括 Windows.h)
Unicode 和 ANSI 名称
(_PRINTER_INFO_7W unicode) 和 _PRINTER_INFO_7A (ANSI)

另请参阅

打印

打印后台处理程序 API 结构