Share via


AdvancedDocumentProperties 関数

AdvancedDocumentProperties 関数は、指定したプリンターのプリンター構成ダイアログ ボックスを表示し、ユーザーがそのプリンターを構成できるようにします。

この関数は DocumentProperties 関数の特殊なケースです。 詳細については、「解説」セクションを参照してください。

構文

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

パラメーター

hWnd [in]

[プリンター構成] ダイアログ ボックスの親ウィンドウへのハンドル。

hPrinter [in]

プリンター オブジェクトへのハンドル。 プリンター ハンドルを取得するには、 OpenPrinter 関数または AddPrinter 関数を使用します。

pDeviceName [in]

プリンター構成ダイアログ ボックスを表示するデバイスの名前を指定する null で終わる文字列へのポインター。

pDevModeOutput [out]

ユーザーが指定した構成データを格納する DEVMODE 構造体へのポインター。

pDevModeInput [in]

プリンター構成ダイアログ ボックスのコントロールを初期化するために使用される構成データを含む DEVMODE 構造体へのポインター。

戻り値

これらのパラメーターを持つ DocumentProperties 関数が成功した場合、 AdvancedDocumentProperties の戻り値は 1 になります。 それ以外の場合、戻り値は 0 です。

注釈

注意

これはブロック関数または同期関数であり、すぐには返されない場合があります。 この関数が返す速度は、アプリケーションの作成時に予測が困難なネットワーク状態、プリント サーバーの構成、プリンター ドライバーの実装要因などの実行時の要因によって異なります。 ユーザー インターフェイスとの対話を管理するスレッドからこの関数を呼び出すと、アプリケーションが応答しなくなる可能性があります。

この関数は、ユーザーが構成できるように、プリンター構成ダイアログ ボックスのみを表示できます。 詳細を制御する場合は、 DocumentProperties を使用します。 この関数の入力パラメーターは DocumentProperties に直接渡され、 fMode 値は DM_IN_BUFFER | に設定されます。DM_IN_PROMPT |DM_OUT_BUFFER。 DocumentProperties とは異なり、この関数は 1 または 0 のみを返します。 したがって、pDevMode を 0 に設定すると、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