Share via


ConnectToPrinterDlg 関数

ConnectToPrinterDlg 関数は、ユーザーがネットワーク上のプリンターを参照して接続できるようにするダイアログ ボックスを表示します。 ユーザーがプリンターを選択すると、関数はプリンターへの接続を作成しようとします。適切なドライバーがサーバーにインストールされていない場合、ユーザーにはプリンターをローカルで作成するオプションが与えられます。

構文

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

パラメーター

hwnd [in]

ダイアログ ボックスの親ウィンドウを指定します。

Flags [in]

このパラメーターは予約されており、0 である必要があります。

戻り値

関数が成功し、ユーザーがプリンターを選択した場合、戻り値は選択したプリンターのハンドルになります。

関数が失敗した場合、またはユーザーがプリンターを選択せずにダイアログ ボックスをキャンセルした場合、戻り値は 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