IPrintCoreUI2::GetOptions メソッド (prcomoem.h)
メソッドはIPrintCoreUI2::GetOptions
、ドライバーの現在の機能設定を、機能/オプションのキーワード (keyword)ペアの一覧の形式で取得します。
構文
HRESULT GetOptions(
[in] POEMUIOBJ poemuiobj,
[in] DWORD dwFlags,
[in] PCZZSTR pmszFeaturesRequested,
[in] DWORD cbIn,
[out] PZZSTR pmszFeatureOptionBuf,
[in] DWORD cbSize,
[out] PDWORD pcbNeeded
);
パラメーター
[in] poemuiobj
現在のコンテキスト ( OEMUIOBJ 構造体) へのポインター。
[in] dwFlags
は予約されており、0 に設定する必要があります。
[in] pmszFeaturesRequested
設定が要求される機能キーワードの一覧 (MULTI_SZ形式) を含む呼び出し元が指定したバッファーへのポインター。 すべての機能の設定を取得するには、このパラメーターを NULL に設定します。
[in] cbIn
pmszFeaturesRequested が指すバッファーのサイズをバイト単位で指定します。 サイズには、最後のMULTI_SZ null 文字が含まれます。
[out] pmszFeatureOptionBuf
ドライバー設定から取得した機能/オプション キーワード (keyword)ペアの一覧 (MULTI_SZ形式) を受け取る、呼び出し元から指定されたバッファーへのポインター。 各機能/オプションキーワード (keyword)ペアには、特徴キーワード (keyword)名、null 文字、オプションキーワード (keyword)名、および別の null 文字が含まれます。 リストは 2 つの null 文字で終了します。
[in] cbSize
pmszFeatureOptionBuf が指すバッファーのサイズをバイト単位で指定します。
[out] pcbNeeded
機能/オプションのペアの実際のサイズ (バイト単位) を受け取るメモリの場所へのポインターキーワード (keyword)。
戻り値
メソッドは、次のいずれかの値を返す必要があります。
リターン コード | 説明 |
---|---|
|
メソッドが成功しました。 |
|
cbSize の値が、出力バッファーに書き込まれるバイト数 (pmszFeatureOptionBuf が指すバッファー) よりも小さくなっています。
pmszFeatureOptionBuf をNULL に設定してメソッドが呼び出されました。 |
|
入力バッファー ( pmszFeaturesRequested が指すバッファー) が提供されましたが、その内容はMULTI_SZ形式ではありません。
無効なコンテキスト オブジェクトを指す poemuiobj パラメーター。 |
|
メソッドがサポートされていません。 |
|
メソッドが失敗しました |
注釈
このメソッドは、コア ドライバーの標準 UI ページを完全に置き換える Windows XP Pscript5 UI プラグインでのみサポートされ、UI プラグインの IPrintOemUI::D ocumentPropertySheets および IPrintOemUI::D evicePropertySheets 関数とそのプロパティ シート コールバック ルーチンの間にのみサポートされます。 詳細については、「 プロパティ シート ページ Driver-Supplied 置き換える 」を参照してください。
要求された機能キーワード (keyword)が認識されない、または認識されているが、現在のスティッキー モード (ドキュメントスティッキーまたはプリンター固定) でサポートされていない場合 (「Driver-Supplied プロパティ シート ページの置換」を参照)、機能キーワード (keyword)が認識されるが、現在はオプションが選択されていない場合、機能は無視され、機能/オプションは無視されます。キーワード (keyword)ペアは出力バッファーに配置されません。
データ アクセスごとに 2 つの呼び出しを行う必要性を減らすには、メソッドに固定サイズ (1 KB など) の出力バッファーを渡し、関数の戻り値をチェックします。 メソッドがS_OKを返す場合、バッファーには既に目的のデータが含まれています。 メソッドがE_OUTOFMEMORYを返す場合、*pcbNeeded の値は目的のデータを保持するために必要なバッファー サイズです。 呼び出し元は、その大きなサイズのバッファーを割り当て、メソッドの 2 回目の呼び出しを続行する必要があります。
詳細については、「 GetOptions と SetOptions の使用」を参照してください。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | prcomoem.h (Prcomoem.h を含む) |
こちらもご覧ください
IPrintOemUI::D evicePropertySheets