CM_Get_Class_Registry_PropertyW関数 (cfgmgr32.h)
CM_Get_Class_Registry_Property関数は、デバイス セットアップ クラスのプロパティを取得します。
構文
CMAPI CONFIGRET CM_Get_Class_Registry_PropertyW(
[in] LPGUID ClassGuid,
[in] ULONG ulProperty,
[out, optional] PULONG pulRegDataType,
[out] PVOID Buffer,
[in, out] PULONG pulLength,
[in] ULONG ulFlags,
[in, optional] HMACHINE hMachine
);
パラメーター
[in] ClassGuid
プロパティを取得する デバイス セットアップ クラス を表す GUID へのポインター。
[in] ulProperty
取得するプロパティを識別する ULONG 型の値。 この値は、Cfgmgr32.h で定義されている次のCM_CRP_Xxx 値のいずれかである必要があります。
CM_CRP_UPPERFILTERS
文字列のREG_MULTI_SZ型のリストを表します。各文字列には、クラスに登録されている上位レベルのフィルター ドライバーの名前が含まれます。
CM_CRP_LOWERFILTERS
REG_MULTI_SZ型指定された文字列の一覧を表します。各文字列には、 クラスに登録されている下位レベルのフィルター ドライバーの名前が含まれます。
CM_CRP_SECURITY
可変長、自己相対、SECURITY_DESCRIPTOR構造体を含むREG_BINARY型の値 を 表します。
CM_CRP_SECURITY_SDS
セキュリティ記述子定義言語 (SDDL) 形式のセキュリティ記述子を含むREG_SZ型の文字列を表します。
CM_CRP_DEVTYPE
クラスのデバイスの種類を示すREG_DWORD型の値を表します。 詳細については、「 デバイスの種類の指定」を参照してください。
CM_CRP_EXCLUSIVE
ユーザーがこのクラスのデバイスへの排他的アクセスを取得できるかどうかを示すREG_DWORD型の値を表します。 排他アクセスが許可されている場合は 1、それ以外の場合は 0 が返されます。
CM_CRP_CHARACTERISTICS
クラスのデバイス特性を示す DWORD 型の値を表します。 特性フラグの一覧については、IoCreateDevice ルーチンの DeviceCharacteristics パラメーターを参照してください。
[out, optional] pulRegDataType
要求されたプロパティのデータ型を表すREG_Xxx 定数を受け取る ULONG 型の変数へのポインター。 REG_Xxx 定数は Winnt.h で定義され、KEY_VALUE_BASIC_INFORMATION構造体の Type メンバーで説明されています。 このパラメーターは省略可能であり、 NULL に設定できます。
[out] Buffer
要求されたプロパティ データを受け取るバッファーへのポインター。 このパラメーターと buffer-size パラメーター pulLength の詳細については、次の 「解説 」セクションを参照してください。
[in, out] pulLength
入力時の値が Buffer によって提供されるバッファーのサイズ (バイト単位) である ULONG 型の変数へのポインター。 戻り値 CM_Get_Class_Registry_Property 、この変数を要求されたプロパティのサイズ (バイト単位) に設定します。
[in] ulFlags
内部使用専用に予約されています。 0 に設定する必要があります。
[in, optional] hMachine
指定したデバイス クラス プロパティを取得するリモート コンピューターへのハンドル。 このパラメーターは省略可能であり、 NULL に設定されている場合、プロパティはローカル コンピューターから取得されます。
戻り値
操作が成功した場合、 CM_Get_Class_Registry_Property はCR_SUCCESSを返します。 それ以外の場合、関数は Cfgmgr32.h で定義されている他のCR_Xxx 状態コードのいずれかを返します。
注釈
プロパティを取得する前のプロパティのサイズ (バイト単位) を判断するには、最初に nullバッファー ポインターと pulLength 値 0 を指定して、CM_Get_Class_Registry_Propertyを呼び出します。 このような呼び出しに応答して、 関数は プロパティを取得しませんが、pulLength を要求されたプロパティのサイズに設定し、CR_BUFFER_SMALLを返します。 プロパティ サイズを取得した後、CM_Get_Class_Registry_Propertyを再度呼び出し、バッファーへの Buffer ポインターを指定してプロパティ データを受信し、プロパティ サイズを pulLength で*指定します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | cfgmgr32.h (Cfgmgr32.h を含む) |
Library | Cfgmgr32.lib |
こちらもご覧ください
CM_Set_Class_Registry_Property