SetupDiOpenClassRegKeyExA 関数 (setupapi.h)
SetupDiOpenClassRegKeyEx 関数は、デバイス セットアップ クラス レジストリ キー、デバイス インターフェイス クラス レジストリ キー、または特定のクラスのサブキーを開きます。 この関数は、指定したキーをローカル コンピューターまたはリモート コンピューターで開きます。
構文
WINSETUPAPI HKEY SetupDiOpenClassRegKeyExA(
[in, optional] const GUID *ClassGuid,
[in] REGSAM samDesired,
[in] DWORD Flags,
[in, optional] PCSTR MachineName,
PVOID Reserved
);
パラメーター
[in, optional] ClassGuid
レジストリ キーを開くクラスの GUID へのポインター。 このパラメーターは省略可能であり、 NULL にすることができます。 このパラメーターが NULL の場合、クラス ツリーのルート (HKLM\SYSTEM\CurrentControlSet\Control\Class) が開きます。
[in] samDesired
開くキーのレジストリ セキュリティ アクセス。 REGSAM 型のレジストリ セキュリティ アクセス値の詳細については、Microsoft Windows SDKドキュメントを参照してください。
[in] Flags
開くレジストリ キーの種類。これは、次のいずれかによって指定されます。
DIOCR_INSTALLER
セットアップ クラス キーを開きます。 ClassGuid が NULL の場合は、クラス インストーラー ブランチのルート キーを開きます。
DIOCR_INTERFACE
インターフェイス クラス キーを開きます。 ClassGuid が NULL の場合は、インターフェイス クラス ブランチのルート キーを開きます。
[in, optional] MachineName
必要に応じて、指定したキーを開くリモート コンピューターの名前を含む文字列を指します。
注意事項
この機能は削除されたため、この関数を使用してリモート マシンにアクセスすることは、Windows 8とWindows Server 2012以降はサポートされていません。
Reserved
予約済み。 NULL にする必要があります。
戻り値
SetupDiOpenClassRegKeyEx は、このセットアップ クラスに関する情報を格納または取得できる、開かれたレジストリ キーへのハンドルを返します。
関数が失敗した場合は、INVALID_HANDLE_VALUEを返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
samDesired パラメーターで渡される値によっては、この関数の呼び出し元が Administrators グループのメンバーであることが必要になる場合があります。
SetupDiOpenClassRegKeyEx では、レジストリ キーがまだ存在しない場合、レジストリ キーは作成されません。
この関数の呼び出し元は 、RegCloseKey を呼び出して、この関数から返されたハンドルを閉じる必要があります。
注意
setupapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetupDiOpenClassRegKeyEx を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | setupapi.h (Setupapi.h を含む) |
Library | Setupapi.lib |