AdvancedDocumentProperties 函数

AdvancedDocumentProperties 函数显示指定打印机的打印机配置对话框,允许用户配置该打印机。

此函数是 DocumentProperties 函数的特殊情况。 有关详细信息,请参阅“备注”部分。

语法

LONG AdvancedDocumentProperties(
  _In_  HWND     hWnd,
  _In_  HANDLE   hPrinter,
  _In_  LPTSTR   pDeviceName,
  _Out_ PDEVMODE pDevModeOutput,
  _In_  PDEVMODE pDevModeInput
);

参数

hWnd [in]

打印机配置对话框的父窗口的句柄。

hPrinter [in]

打印机对象的句柄。 使用 OpenPrinterAddPrinter 函数检索打印机句柄。

pDeviceName [in]

指向以 null 结尾的字符串的指针,该字符串指定应显示打印机配置对话框的设备的名称。

pDevModeOutput [out]

指向 DEVMODE 结构的指针,该结构将包含用户指定的配置数据。

pDevModeInput [in]

指向 DEVMODE 结构的指针,该结构包含用于初始化打印机配置对话框的控件的配置数据。

返回值

如果具有这些参数的 DocumentProperties 函数成功,则 AdvancedDocumentProperties 的返回值为 1。 否则返回值为零。

注解

注意

这是一个阻塞或同步函数,可能不会立即返回。 此函数的返回速度取决于运行时因素,例如网络状态、打印服务器配置以及编写应用程序时难以预测的打印机驱动程序实现因素。 从管理与用户界面交互的线程调用此函数可能会使应用程序看起来无响应。

此函数只能显示打印机配置对话框,以便用户可以对其进行配置。 若要获得更多控制,请使用 DocumentProperties。 此函数的输入参数直接传递到 DocumentPropertiesfMode 值设置为 DM_IN_BUFFER |DM_IN_PROMPT |DM_OUT_BUFFER。 与 DocumentProperties 不同,此函数仅返回 1 或 0。 因此,无法通过将 pDevMode 设置为零来确定 DEVMODE 的所需大小。

应用程序可以通过调用 GetPrinter 函数,然后检查 PRINTER_INFO_2 结构的 pPrinterName 成员来获取 pDeviceName 参数指向的名称。

要求

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

Winspool.lib
DLL
Winspool.drv
Unicode 和 ANSI 名称
AdvancedDocumentPropertiesW (Unicode) 和 AdvancedDocumentPropertiesA (ANSI)

另请参阅

打印

打印后台处理程序 API 函数

AddPrinter

DEVMODE

DocumentProperties

GetPrinter

OpenPrinter

PRINTER_INFO_2