次の方法で共有


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

IPrintCoreHelper::EnumConstrainedOptions メソッドは、現在の設定に基づいて、特定の機能で制約されているすべてのオプションの一覧を提供します。

構文

HRESULT EnumConstrainedOptions(
  [in, optional] IN const DEVMODE *pDevmode,
  [in]           IN DWORD         cbSize,
  [in]           IN PCSTR         pszFeatureKeyword,
  [out]          OUT PCSTR * []   pConstrainedOptionList,
  [out]          OUT DWORD        *pdwNumOptions
);

パラメーター

[in, optional] pDevmode

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

[in] cbSize

pDevmode パラメーターが指す DEVMODEW 構造体のサイズ (バイト単位)。

[in] pszFeatureKeyword

機能名を含む ANSI 文字の文字列。

[out] pConstrainedOptionList

ANSI 文字列の配列へのポインター。 IPrintCoreHelper::EnumConstrainedOptions が返されると、これらの文字列には、指定された機能内で制約されているすべてのオプションの名前が含まれます。 呼び出し元は、配列または配列内の個々の文字列を解放する責任を負いません。

[out] pdwNumOptions

pConstrainedOptionList パラメーターが指す配列内の制約付きオプションの数を受け取る変数へのポインター。

戻り値

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

リターン コード 形容
S_OK 制約付きオプションは、指定されたフィーチャに対して設定されました。
E_FAIL 呼び出し元は、存在しない機能の要求など、無効な要求が発生した情報を提供しました。
E_INVALIDARG 1 つ以上の引数が無効でした。 この値は、この機能がサポートされていないことを意味する可能性があります。
E_OUTOFMEMORY オプション配列を作成するのに十分なメモリがなかったか、コア ドライバーがメモリ不足のため要求に対応できませんでした。
E_UNEXPECTED、またはここに明示的に記載されていないその他のエラー 予期しない状態が発生しました。 コア ドライバーが無効な状態である可能性があります。 呼び出し元は、エラー コードで終了する必要があります。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー prcomoem.h (Prcomoem.h を含む)

関連項目

IPrintCoreHelper

IPrintCoreHelper::EnumOptions

IPrintCoreHelper::WhyConstrained