IPrintCoreHelperUni::WhyConstrained メソッド (prcomoem.h)
メソッドは IPrintCoreHelperUni::WhyConstrained
、現在の構成で指定された機能とオプションのペアを制約するオプションの一覧を提供します。
構文
HRESULT WhyConstrained(
[in, optional] const DEVMODE *pDevmode,
[in] DWORD cbSize,
[in] PCSTR pszFeatureKeyword,
[in] PCSTR pszOptionKeyword,
[out] const PRINT_FEATURE_OPTION **ppFOConstraints,
[out] DWORD *pdwNumOptions
);
パラメーター
[in, optional] pDevmode
DEVMODEW 構造体へのポインター。 このポインターが指定されている場合は、 IPrintCoreHelperUni::WhyConstrained
既定または現在の DEVMODEW 構造体ではなく 、pDevmode によって指される DEVMODEW 構造体を使用する必要があります。 このメソッドがプラグイン プロバイダーまたは IPrintOemUni::D evMode から呼び出される場合は、このパラメーターが必要です。 その他のほとんどの状況では、 パラメーターは NULL にする必要があります。 コア ドライバーは 、pDevmode を NULL に設定すると、渡された DEVMODEW 構造体の状態ではなく、内部状態を変更します。 これは、完全な UI 置換などの操作中に必要です。DDI によって返される DEVMODEW 構造体 ( DrvDocumentPropertySheets など) は、コア ドライバーの UI モジュールによって処理されます。
[in] cbSize
pDevmode パラメーターによって指される DEVMODEW 構造体のサイズ (バイト単位)。
[in] pszFeatureKeyword
フィーチャーの名前を含む ANSI 文字列へのポインター。 機能名は、GPD ファイルで使用されるキーワード (keyword)に対応している必要があります。
[in] pszOptionKeyword
オプションの名前を含む ANSI 文字列へのポインター。 オプション名は、GPD ファイルで使用されるキーワード (keyword)に対応している必要があります。
[out] ppFOConstraints
PRINT_FEATURE_OPTION要素の配列へのポインター。 が返されると IPrintCoreHelperUni::WhyConstrained
、 配列には、pszOptionKeyword パラメーターで指定されたオプションを制約するオプションの機能要素ペアの一覧が含まれます。
[out] pdwNumOptions
ppFOConstraints パラメーターが指す配列内の機能とオプションのペアの数を受け取る変数へのポインター。
戻り値
IPrintCoreHelperUni::WhyConstrained
は、次のいずれかの値を返す必要があります。
リターン コード | 説明 |
---|---|
|
操作が成功しました。 |
|
1 つ以上の引数が無効であるか、機能がサポートされていません。 |
|
結果配列のメモリを割り当てませんでした。 |
その他のエラーの場合、メソッドは標準の COM エラー コードを返す必要があります。
注釈
指定した機能とオプションのペアが制約されていない場合は、S_OKを返しますが、 IPrintCoreHelperUni::WhyConstrained
*pdwFOPairs を 0 に設定し、*ppFOConstraints[0] を NULL に設定して を返します。
このメソッドの結果には、現在選択されているオプションに影響するすべてのオプションが含まれていない可能性があることに注意してください。 ただし、2 つ以上の機能とオプションのペアを一覧表示する無効な組み合わせがある場合、その組み合わせのオプションは 1 つだけリストに含まれます。
要件
要件 | 値 |
---|---|
対象プラットフォーム | デスクトップ |
Header | prcomoem.h (Prcomoem.h を含む) |