DevQueryPrintEx 関数 (winddiui.h)
プリンター インターフェイス DLL の DevQueryPrintEx 関数は、指定された印刷ジョブがプリンターの現在の構成と互換性があり、したがって印刷できるかどうかを判断します。
BOOL DevQueryPrintEx(
[in, out] PDEVQUERYPRINT_INFO pDQPInfo
);
[in, out] pDQPInfo
呼び出し元が指定した DEVQUERYPRINT_INFO 構造体へのポインター。
印刷ジョブを印刷できる場合、関数は TRUE を返す必要があります。それ以外の場合は、 FALSE を返す必要があります。
プリンター インターフェイス DLL では 、DevQueryPrintEx 関数を定義する必要があります。 プリンターのプロパティ シートの [詳細設定] ページで [不一致ドキュメントの保持] オプションがオンになっている場合、この関数は印刷スプーラーによって呼び出されます。 関数が TRUE を返す場合、スプーラーは印刷ジョブをキューに入れます。 それ以外の場合は、ジョブが印刷できるようにプリンターが最終的に再構成されることを前提として、ジョブが保持されます。
受け取った DEVQUERYPRINT_INFO 構造体は、印刷ジョブに必要なプリンター特性を記述する DEVMODEW 構造体を指しています。 DevQueryPrintEx 関数は、まず、受信した DEVMODEW 構造体のサイズとバージョンのメンバーがドライバーと互換性があることを確認する必要があります。 次に、指定された DEVMODEW コンテンツが現在のプリンター構成と互換性があるかどうかを判断する必要があります。
ジョブを出力できる場合、関数は TRUE を返すだけです。 ジョブを後で保持する必要がある場合、ジョブを印刷できない理由を説明する表示可能なテキスト文字列 (DEVQUERYPRINT_INFO 構造体の pszErrorStr メンバーが指すバッファー内) を指定した後、関数は FALSE を返す必要があります。
表示可能なテキスト文字列は、リソース ファイル内の文字列リソースとして定義する必要があります。
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | winddiui.h (Winddiui.h を含む) |
Library | Winspool.lib |
[DLL] | WinSpool.drv |