DrvDeviceCapabilities 関数 (winddiui.h)
プリンター インターフェイス DLL の DrvDeviceCapabilities 関数は、プリンターの機能に関する要求された情報を返します。
構文
DWORD DrvDeviceCapabilities(
HANDLE hPrinter,
[in] PWSTR pszDeviceName,
WORD Capability,
[out] PVOID pOutput,
[in, optional] PDEVMODE pDevmode
);
パラメーター
hPrinter
呼び出し元が指定したプリンター ハンドル。
[in] pszDeviceName
プリンター名文字列への呼び出し元指定ポインター。
Capability
要求されている情報を示す呼び出し元指定のビット フラグ。 次の表に示すフラグのいずれかを指定できます。 (フラグはヘッダー ファイル Wingdi.h で定義されています)。
フラグ | 定義 |
---|---|
DC_BINADJUST | NT ベースのオペレーティング システムでは使用されません。 |
DC_BINNAMES | pOutput パラメーターは、関数が文字列バッファーの配列 (各 24 文字) を格納するバッファーを指します。 配列内の各文字列バッファーには、用紙ソース ビンの名前を指定するワイド文字の NULL で終わる文字列が含まれている必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は必要な配列要素の数だけを返す必要があります。 |
DC_BINS | pOutput パラメーターは、関数が WORD 配列で埋めるバッファーを指します。 各配列要素には、サポートされている用紙ソース ビンを表す DMBIN プレフィックス付き定数 (またはカスタマイズされた値) が含まれている必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は必要な配列要素の数だけを返す必要があります。 |
DC_COLLATE | pOutput パラメーターは使用されません。 プリンターが照合順序をサポートしている場合、関数の戻り値は 1 にする必要があります。それ以外の場合、戻り値は 0 にする必要があります。 |
DC_COLORDEVICE | pOutput パラメーターは使用されません。 プリンターがカラー印刷をサポートしている場合、関数の戻り値は 1 にする必要があります。それ以外の場合、戻り値は 0 にする必要があります。 |
DC_COPIES | pOutput パラメーターは使用されません。 関数の戻り値は、プリンターがサポートできるコピーの最大数である必要があります。 |
DC_DATATYPE_PRODUCED | NT ベースのオペレーティング システムでは使用されません。 |
DC_DRIVER | pOutput パラメーターは使用されません。 関数の戻り値は、ドライバーの内部 [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew) 構造体の dmDriverVersion メンバーである必要があります。 |
DC_DUPLEX | pOutput パラメーターは使用されません。 プリンターが両面印刷をサポートしている場合、関数の戻り値は 1 にする必要があります。それ以外の場合、戻り値は 0 にする必要があります。 |
DC_EMF_COMPLIANT | NT ベースのオペレーティング システムでは使用されません。 |
DC_ENUMRESOLUTIONS | pOutput パラメーターは、関数が LONG 配列で埋めるバッファーを指します。 プリンターでサポートされている解像度ごとに、関数は解像度の 2 つの長い単語 (1 つは x ディメンション用、もう 1 つは y ディメンション用) を 1 インチあたりのドット単位で返す必要があります。 関数の戻り値は、サポートされている解像度の数である必要があります。 pOutput が NULL の場合、関数はサポートされている解像度の数だけを返す必要があります。 |
DC_EXTRA | pOutput パラメーターは使用されません。 関数の戻り値は、ドライバーの内部 [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew) 構造体の dmDriverExtra メンバーである必要があります。 |
DC_FIELDS | pOutput パラメーターは使用されません。 関数の戻り値は、ドライバーの内部 [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew) 構造体の dmFields メンバーである必要があります。 dmFields メンバーは、プリンター ドライバーでサポートされている DEVMODEW 構造体のデバイスに依存しない部分のメンバーを示します。 |
DC_FILEDEPENDENCIES | pOutput パラメーターは、関数が文字列バッファーの配列 (各 64 文字の長さ) で埋めるバッファーを指します。 配列内の各文字列バッファーには、ドライバーと共にインストールする必要があるファイルの名前を指定するワイド文字の NULL で終わる文字列が含まれている必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は必要な配列要素の数だけを返す必要があります。 |
DC_MANUFACTURER | NT ベースのオペレーティング システムでは使用されません。 |
DC_MAXEXTENT | pOutput パラメーターは使用されません。 関数は POINTS 構造体を返す必要があります (Microsoft Windows SDKドキュメントで説明されています)。 構造体には、プリンターの DEVMODEW 構造体の dmPaperWidth (x ディメンション) メンバーと dmPaperLength (y ディメンション) メンバーの最大許容値が含まれている必要があります。 |
DC_MEDIAREADY | pOutput パラメーターは、関数が文字列バッファーの配列 (各 64 文字の長さ) で埋めるバッファーを指します。 配列内の各文字列バッファーには、使用できる用紙フォームの名前を指定するワイド文字の NULL で終わる文字列が含まれている必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は必要な配列要素の数だけを返す必要があります。 |
DC_MEDIATYPENAMES | pOutput パラメーターは、関数が文字列バッファーの配列 (各 64 文字の長さ) で埋めるバッファーを指します。 配列内の各文字列バッファーには、サポートされているメディアの種類の名前を指定するワイド文字の NULL で終わる文字列が含まれている必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は単に必要な配列要素の数を返す必要があります。 |
DC_MEDIATYPES | pOutput パラメーターは、関数が DWORD 配列で埋めるバッファーを指します。 各配列要素には、DMMEDIA プレフィックス付き定数 ([DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew) 構造体を参照) またはサポートされているメディアの種類を表すカスタマイズされた値を含める必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は単に必要な配列要素の数を返す必要があります。 |
DC_MINEXTENT | pOutput パラメーターは使用されません。 関数は POINTS 構造体を返す必要があります (Windows SDKドキュメントで説明されています)。 構造体には、プリンターの DEVMODEW 構造体の dmPaperWidth (x ディメンション) メンバーと dmPaperLength (y ディメンション) メンバーの最小値が含まれている必要があります。 |
DC_MODEL | NT ベースのオペレーティング システムでは使用されません。 |
DC_NUP | pOutput パラメーターは、関数が DWORD 配列で埋めるバッファーを指します。 各配列要素には、N-up オプションを表す整数が含まれている必要があります (つまり、各整数は、物理ページごとにサポートされているドキュメント ページ数を表す必要があります)。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は必要な配列要素の数だけを返す必要があります。 |
DC_ORIENTATION | pOutput パラメーターは使用されません。 関数の戻り値は、縦向きから横向きを生成するために必要な回転度数である必要があります。 値 0 は、横向きがサポートされていないことを示します。 |
DC_PAPERNAMES | pOutput パラメーターは、関数が文字列バッファーの配列 (各 64 文字の長さ) で埋めるバッファーを指します。 配列内の各文字列バッファーには、用紙フォームの名前を指定するワイド文字の NULL で終わる文字列が含まれている必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は必要な配列要素の数だけを返す必要があります。 |
DC_PAPERS | pOutput パラメーターは、関数が WORD 配列で埋めるバッファーを指します。 各配列要素には、サポートされている用紙フォームを表す DMPAPER プレフィックス付き定数 (またはカスタマイズされた値) が含まれている必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は必要な配列要素の数だけを返す必要があります。 |
DC_PAPERSIZE | pOutput パラメーターは、関数が POINT 配列で埋めるバッファーを指します。 各配列要素には、フォームの用紙サイズの x と y の寸法を縦向きに 0.1 mm 単位で含める必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は必要な配列要素の数だけを返す必要があります。 |
DC_PERSONALITY | pOutput パラメーターは、関数が文字列バッファーの配列 (各 32 文字の長さ) で埋めるバッファーを指します。 配列内の各文字列バッファーには、プリンターでサポートされているプリンター記述言語 (L"HP-GL/2"など) を指定するワイド文字の NULL で終わる文字列が含まれている必要があります。 関数の戻り値は、返される配列内の要素の数である必要があります。 pOutput が NULL の場合、関数は必要な配列要素の数だけを返す必要があります。 |
DC_PRINTERMEM | pOutput パラメーターは使用されません。 関数の戻り値は、使用可能なプリンター メモリの量をキロバイト単位で表す整数である必要があります。 |
DC_PRINTRATE | pOutput パラメーターは使用されません。 関数の戻り値は、DC_PRINTRATEUNITに指定された単位で、印刷速度を表す整数である必要があります。 |
DC_PRINTRATEPPM | pOutput パラメーターは使用されません。 関数の戻り値は、印刷速度を表す整数 (1 分あたりのページ数) である必要があります。 |
DC_PRINTRATEUNIT | pOutput パラメーターは使用されません。 関数の戻り値は、DC_PRINTRATEに返される値を指定するために使用される単位を識別する必要があります。 次のいずれかの定数を指定する必要があります: PRINTRATEUNIT_PPM - pages/min。 PRINTRATEUNIT_CPS - chars./sec. PRINTRATEUNIT_LPM - 行/分。 PRINTRATEUNIT_IPM - インチ/分。 |
DC_SIZE | pOutput パラメーターは使用されません。 関数の戻り値は、ドライバーの内部 [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew) 構造体の dmSize メンバーである必要があります。 |
DC_STAPLE | pOutput パラメーターは使用されません。 プリンターがステープルをサポートしている場合は関数の戻り値が TRUE 、プリンターがステープルをサポートしていない場合は FALSE にする必要があります。 |
DC_TRUETYPE | pOutput パラメーターは使用されません。 関数の戻り値には、0、1、または複数のフラグを指定できます。 DCTT_BITMAP: デバイスは TrueType フォントをグラフィックスとして印刷できます。 DCTT_DOWNLOAD: デバイスは、ダウンロードした TrueType フォントを受け入れます。 DCTT_DOWNLOAD_OUTLINE: (Windows 95/98/Me のみ) デバイスはアウトライン TrueType フォントをダウンロードできます。 DCTT_SUBDEV: デバイスは、デバイスフォントを TrueType フォントに置き換えることができます。 |
DC_VERSION | pOutput パラメーターは使用されません。 関数の戻り値は、ドライバーの内部 [DEVMODEW](/windows/win32/api/wingdi/ns-wingdi-devmodew) 構造体の dmSpecVersion メンバーである必要があります。 |
[out] pOutput
関数提供の情報を受け取るバッファーへの呼び出し元指定ポインター。 バッファーの使用は、 Capability パラメーターに対して受け取った値に依存します。
[in, optional] pDevmode
現在の印刷ジョブ特性を記述する DEVMODEW 構造体への呼び出し元指定ポインター。 このパラメーターが NULL の場合、 DrvDeviceCapabilities は、印刷キューのユーザーの既定の DEVMODEW 構造体など、指定されたプリンター ドライバーの現在の既定の初期化値を取得します。
戻り値
関数の戻り値は、 Capability パラメーターに対して受け取った値に依存します。 受信した Capability 値がドライバーでサポートされていない機能を表している場合、またはエラーが発生した場合、関数は GDI_ERRORを返す必要があります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | winddiui.h (Winddiui.h を含む) |