次の方法で共有


IPrintCoreHelper::GetOption メソッド (prcomoem.h)

IPrintCoreHelper::GetOption メソッドは、特定の機能に対して指定されたオプションを取得します。

構文

HRESULT GetOption(
  [in]  const DEVMODE *pDevmode,
  [in]  DWORD         cbSize,
  [in]  PCSTR         pszFeatureRequested,
  [out] PCSTR         *ppszOption
);

パラメーター

[in] pDevmode

DEVMODEW 構造体へのポインター。 このポインターが指定されている場合、 IPrintCoreHelper::GetOption は、既定または現在の DEVMODEW 構造体ではなく 、pDevmode によって指される DEVMODEW 構造体を使用する必要があります。 このメソッドがプラグイン プロバイダーから、または IPrintOemPS::D evMode または IPrintOemUni::D evMode のいずれかから呼び出される場合は、このパラメーターが必要です。 その他のほとんどの状況では、 パラメーターは NULL にする必要があります。 コア ドライバーは 、pDevmodeNULL に設定すると、渡された DEVMODEW 構造体の状態ではなく、内部状態を変更します。 これは、完全な UI 置換などの操作中に必要です。DDI によって返される DEVMODEW 構造体 ( DrvDocumentPropertySheets など) は、コア ドライバーの UI モジュールによって処理されます。

[in] cbSize

pDevmode パラメーターによって指される DEVMODEW 構造体のサイズ (バイト単位)。

[in] pszFeatureRequested

GPD ファイルに表示される機能の名前を含む ANSI 文字列へのポインター。

[out] ppszOption

ANSI 文字列のアドレスを含む変数へのポインター。 IPrintCoreHelper::GetOption が返されると、構成ファイルに表示される現在選択されているオプションのキーワード (keyword)が文字列に含まれている必要があります。 呼び出し元はこの文字列を変更しないでください。また、この文字列に関連付けられているメモリを解放しないでください。

戻り値

IPrintCoreHelper::GetOption は、次のいずれかの値を返す必要があります。

リターン コード 説明
S_OK
メソッドは、指定された機能のオプションを読み取る。
E_FAIL
呼び出し元が、無効な要求の結果となった情報を提供しました。 たとえば、要求された機能は存在しません。
E_INVALIDARG
引数が無効です。 この値は、機能がサポートされていないこと、または機能に対して要求されたオプションが多すぎることを意味する可能性があります。
E_OUTOFMEMORY
メモリ不足のため、コア ドライバーは要求をサービスできませんでした。
E_UNEXPECTED、またはここに記載されていないその他のリターン コード
コア ドライバーが無効な状態になっているようです。 呼び出し元はエラー コードを返す必要があります。

注釈

IPrintCoreHelper::GetOption は、複数のオプションを同時に設定できる機能には使用できません。

特徴キーワードは、GPD ファイルと PPD ファイルで定義されているとおりです。 さらに、Unidrv ドライバーと Pscript5 ドライバーでは、プライベート DEVMODEW 構造体に格納されているオプションの予約済みキーワードがいくつかサポートされています。

呼び出し元は 、ppszOption によって指されている文字列を解放しないでください。また、文字列を何らかの方法で変更しないでください。

要件

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

こちらもご覧ください

IPrintCoreHelper

IPrintCoreHelper::EnumOptions

IPrintCoreHelper::SetOptions