CM_Get_Class_Property_ExW関数 (cfgmgr32.h)
[Windows 8 および Windows Server 2012 以降、この関数は非推奨になりました。 代わりに CM_Get_Class_Property を使用してください。]
CM_Get_Class_Property_ExW関数は、デバイス インターフェイス クラスまたはデバイス セットアップ クラスに設定されているデバイス プロパティを取得します。
構文
CMAPI CONFIGRET CM_Get_Class_Property_ExW(
[in] LPCGUID ClassGUID,
[in] const DEVPROPKEY *PropertyKey,
[out] DEVPROPTYPE *PropertyType,
[out] PBYTE PropertyBuffer,
[in, out] PULONG PropertyBufferSize,
[in] ULONG ulFlags,
[in] HMACHINE hMachine
);
パラメーター
[in] ClassGUID
デバイス クラスに設定されているデバイス プロパティを取得する デバイス インターフェイス クラス または デバイス セットアップ クラス を識別する GUID へのポインター。 クラス型の指定については、 ulFlags パラメーターを参照してください。
[in] PropertyKey
要求されたデバイス クラス プロパティのデバイス プロパティ キーを表す DEVPROPKEY 構造体へのポインター。
[out] PropertyType
要求されたデバイス クラス プロパティのプロパティ データ型識別子を受け取る DEVPROPTYPE 型の変数へのポインター。ここで、property-data-type 識別子は、基本データ型識別子間のビットごとの OR であり、基本データ型が変更された場合はプロパティ データ型修飾子です。
[out] PropertyBuffer
要求されたデバイス クラス プロパティを受け取るバッファーへのポインター。 CM_Get_Class_Property_ExW は、バッファーがすべてのプロパティ値データを保持するのに十分な大きさの場合にのみ、要求されたプロパティ値を取得します。 ポインターは NULL にすることができます。
[in, out] PropertyBufferSize
PropertyBuffer バッファーのサイズ (バイト単位)。 PropertyBuffer パラメーターが NULL に設定されている場合は、*PropertyBufferSize を 0 に設定する必要があります。 出力として、バッファーがすべてのプロパティ値データを保持するのに十分な大きさでない場合、 CM_Get_Class_Property_ExW は *PropertyBufferSize 内のデータのサイズをバイト単位で返します。
[in] ulFlags
クラス プロパティ フラグ:
CM_CLASS_PROPERTY_INSTALLER
ClassGUID は 、デバイス セットアップ クラスを指定します。 CM_CLASS_PROPERTY_INTERFACEと組み合わせないでください。
CM_CLASS_PROPERTY_INTERFACE
ClassGUID は 、デバイス インターフェイス クラスを指定します。 CM_CLASS_PROPERTY_INSTALLERと組み合わせないでください。
[in] hMachine
呼び出し元が指定したマシン ハンドル。 CM_Connect_Machineの前の呼び出しから取得されます。
戻り値
操作が成功した場合、関数はCR_SUCCESSを返します。 それ以外の場合は、 Cfgmgr32.h で定義されているCR_プレフィックス付きのエラー コードのいずれかを返します。
解説
CM_Get_Class_Property_ExW は、 統合デバイス プロパティ モデルの一部です。
要件
サポートされている最小のクライアント | Microsoft Windows 10 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | cfgmgr32.h (Cfgmgr32.h を含む) |
Library | Cfgmgr32.lib |