IPrintCoreUI2::SetOptions メソッド (prcomoem.h)

メソッドは IPrintCoreUI2::SetOptions 、ドライバーの機能設定を設定します。

構文

HRESULT SetOptions(
  [in]  POEMUIOBJ poemuiobj,
  [in]  DWORD     dwFlags,
  [in]  PCZZSTR   pmszFeatureOptionBuf,
  [in]  DWORD     cbIn,
  [out] PDWORD    pdwResult
);

パラメーター

[in] poemuiobj

現在のコンテキスト ( OEMUIOBJ 構造体) へのポインター。

[in] dwFlags

コア ドライバーが競合を解決するかどうかを指定します。 このパラメーターは、次のいずれかの値に設定する必要があります。

意味
SETOPTIONS_FLAG_KEEP_CONFLICT 発生した競合を解決しないようにコア ドライバーに依頼します。
SETOPTIONS_FLAG_RESOLVE_CONFLICT 発生した競合を解決するようにコア ドライバーに依頼します。

[in] pmszFeatureOptionBuf

機能とオプションのペアの一覧を含む呼び出し元から提供されたバッファーへのポインターキーワード (keyword)形式MULTI_SZ。 このリスト内の各項目は、次の項目から null 文字で区切られ、リストは 2 つの null 文字で終了します。

[in] cbIn

pmszFeatureOptionBuf が指すバッファーのサイズをバイト単位で指定します。 このサイズには、最後のMULTI_SZ null 文字が含まれます。

[out] pdwResult

次のいずれかの値を受け取るメモリの場所へのポインター。 これらの定数は printoem.h で定義されています。

意味
SETOPTIONS_RESULT_CONFLICT_REMAINED コア ドライバーは競合を検出しましたが、解決されていません。
SETOPTIONS_RESULT_CONFLICT_RESOLVED コア ドライバーが検出され、すべての競合が解決されました。
SETOPTIONS_RESULT_NO_CONFLICT コア ドライバーで競合が見つかりませんでした。

戻り値

メソッドは、次のいずれかの値を返す必要があります。

リターン コード 説明
S_OK
メソッドが成功しました。
E_NOTIMPL
メソッドがサポートされていません。

dwLevel で指定された型の構造体はサポートされていません。

E_INVALIDARG
dwFlags の値が正しくありません。

入力バッファー ( pmszFeatureOptionBuf が指す) がMULTI_SZ形式ではありません。

無効なコンテキスト オブジェクトを指す poemuiobj パラメーター。

E_FAIL
メソッドが失敗しました

注釈

このメソッドは、Unidrv プラグインではなく、Windows XP Pscript5 プラグインでのみサポートされます。

このメソッドは、機能とオプションのペアの一覧を使用してドライバーの機能設定キーワード (keyword)設定するために呼び出されます。 呼び出し元は、 IPrintCoreUI2::GetOptions メソッドを使用して、結果の機能設定にアクセスできます。

このメソッドがS_OK以外の値を返す場合、ドライバーの機能設定は変更されませんでした。

pmszFeatureOptionBuf 入力バッファーは、IPrintCoreUI2::GetOptions メソッドの出力バッファーと同じ方法で構築する必要があります。 つまり、機能/オプションキーワード (keyword)ペアはMULTI_SZ形式である必要があり、リスト内の各項目は null 文字で次の項目から区切られます。 null 文字のペアは、リストを終了します。

入力バッファーに、認識されない機能キーワード (keyword)またはそのオプション キーワード (keyword)が含まれている場合、または機能が認識されているが現在のスティッキー モードではサポートされていない場合 (「Driver-Supplied プロパティ シート ページの置換」を参照)、機能とオプションのペアは無視され、その機能の現在のオプションは引き続き有効になります。

このメソッドは、コア ドライバーの標準 UI ページを完全に置き換える UI プラグインでのみサポートされ、UI プラグインの IPrintOemUI::D ocumentPropertySheets 関数と IPrintOemUI::D evicePropertySheets 関数とそのプロパティ シート コールバック ルーチンの間にのみサポートされます。

詳細については、「 GetOptions と SetOptions の使用」を参照してください。

要件

要件
対象プラットフォーム デスクトップ
Header prcomoem.h (Prcomoem.h を含む)

こちらもご覧ください

IPrintCoreUI2

IPrintCoreUI2::GetOptions

IPrintOemUI::D evicePropertySheets

IPrintOemUI::D ocumentPropertySheets

OEMUIOBJ