ConnectToPrinterDlg 函式

ConnectToPrinterDlg函式會顯示對話方塊,讓使用者流覽並聯機到網路上的印表機。 如果使用者選取印表機,函式會嘗試建立與其連線;如果伺服器上未安裝適當的驅動程式,則會提供使用者在本機建立印表機的選項。

語法

HANDLE ConnectToPrinterDlg(
  _In_ HWND  hwnd,
  _In_ DWORD Flags
);

參數

hwnd [in]

指定對話方塊的父視窗。

旗標 [in]

此參數是保留的,而且必須是零。

傳回值

如果函式成功,且使用者選取印表機,則傳回值是所選印表機的控制碼。

如果函式失敗,或使用者取消對話方塊而不選取印表機,則傳回值為 Null

備註

注意

這是封鎖或同步函式,可能不會立即傳回。 此函式傳回的速度取決於執行時間因素,例如網路狀態、列印伺服器設定,以及撰寫應用程式時難以預測的印表機驅動程式實作因素。 從管理與使用者介面互動的執行緒呼叫此函式,可能會使應用程式看起來沒有回應。

ConnectToPrinterDlg函式會嘗試建立與所選印表機的連線。 不過,如果印表機所在的伺服器未安裝適當的驅動程式,此函式會為使用者提供在本機建立印表機的選項。 呼叫的應用程式可以透過呼叫具有PRINTER_INFO_2結構的GetPrinter,然後檢查該結構的Attributes成員,判斷函式是否已在本機建立印表機。

應用程式應該呼叫 DeletePrinter 來刪除本機印表機。 應用程式應該呼叫 DeletePrinterConnection 來刪除印表機的連線。

規格需求

需求
最低支援的用戶端
Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限桌面應用程式]
標頭
Winspool.h (包含 Windows.h)
程式庫
Winspool.lib
DLL
WinSpool.drv

另請參閱

列印

列印多工緩衝處理器 API 函式

AddPrinterConnection

ClosePrinter

DeletePrinter

DeletePrinterConnection

GetPrinter

PRINTER_INFO_2