IPrintCoreUI2::EnumFeatures メソッド (prcomoem.h)
IPrintCoreUI2::EnumFeatures
メソッドは、プリンターの使用可能な機能を列挙します。
構文
HRESULT EnumFeatures(
[in] POEMUIOBJ poemuiobj,
[in] DWORD dwFlags,
[out] PZZSTR pmszFeatureList,
[in] DWORD cbSize,
[out] PDWORD pcbNeeded
);
パラメーター
[in] poemuiobj
現在のコンテキストへのポインター。OEMUIOBJ 構造体。
[in] dwFlags
予約済みであり、0 に設定する必要があります。
[out] pmszFeatureList
MULTI_SZ形式の特徴キーワードの null 区切りリストを受け取る呼び出し元が指定したバッファーへのポインター。 リストは 2 つの null 文字で終了します。
このパラメーターを NULL に設定すると、リストを入力せずにフィーチャー・リストのサイズ (*pcbNeeded) を照会するだけで済みます。
[in] cbSize
pmszFeatureList が指すバッファーのサイズバイト単位で指定します。
[out] pcbNeeded
機能リストの実際のサイズ (バイト単位) を受け取るメモリ位置へのポインター。
戻り値
このメソッドは、次のいずれかの値を返す必要があります。
リターン コード | 形容 |
---|---|
|
メソッドは成功しました。 |
|
cbSize の値が、出力バッファーに書き込まれるバイト数 (pmszFeatureList によって指バッファー) よりも小さかった。
このメソッドは、pmszFeatureList NULL に設定呼び出されました。 |
|
の パラメーターが無効なコンテキスト オブジェクトを指しています。 |
|
メソッドが失敗しました |
備考
このメソッドは、Windows XP Pscript5 プラグインでのみサポートされ、Unidrv プラグインではサポートされません。
プリンター固定 機能 (インストール可能なメモリやオプションのアクセサリの有無を決定する機能など、「 Driver-Supplied プロパティ シート ページの を置き換える」を参照) は、pmszFeatureList が指す出力バッファーに表示される機能キーワード の一覧に含まれます。 Pscript5 の場合、このような機能では、OpenGroupType 機能属性が "InstallableOptions" に設定されます。
データ アクセスごとに 2 つの呼び出しを行う必要性を減らすには、メソッドに固定サイズ (1 KB など) の出力バッファーを渡し、関数の戻り値を確認します。 メソッドがS_OKを返す場合、バッファーには対象のデータが既に含まれています。 メソッドがE_OUTOFMEMORYを返す場合、*pcbNeeded の値は、目的のデータを保持するために必要なバッファー サイズです。 呼び出し元は、その大きなサイズのバッファーを割り当て、メソッドの 2 番目の呼び出しを続行する必要があります。
詳細については、「EnumFeatures の使用」を参照してください。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | prcomoem.h (Prcomoem.h を含む) |
関連項目
OEMUIOBJ を する