SetupDiOpenDevRegKey 関数 (setupapi.h)
SetupDiOpenDevRegKey 関数は、デバイス固有の構成情報のレジストリ キーを開きます。
構文
WINSETUPAPI HKEY SetupDiOpenDevRegKey(
[in] HDEVINFO DeviceInfoSet,
[in] PSP_DEVINFO_DATA DeviceInfoData,
[in] DWORD Scope,
[in] DWORD HwProfile,
[in] DWORD KeyType,
[in] REGSAM samDesired
);
パラメーター
[in] DeviceInfoSet
レジストリ キーを開くデバイスを表すデバイス情報要素を含むデバイス情報 セット へのハンドル。
[in] DeviceInfoData
DeviceInfoSet のデバイス情報要素を指定するSP_DEVINFO_DATA構造体へのポインター。
[in] Scope
開くレジストリ キーのスコープ。 スコープによって、情報が格納される場所が決まります。 スコープは、グローバルにすることも、ハードウェア プロファイルに固有にすることもできます。 スコープは、次のいずれかの値で指定されます。
DICS_FLAG_GLOBAL
キーを開いてグローバル構成情報を格納します。 この情報は、特定のハードウェア プロファイルに固有の情報ではありません。 これにより、HKEY_LOCAL_MACHINEにルート化されたキーが開きます 。 開かれる正確なキーは、 KeyType パラメーターの値によって異なります。
DICS_FLAG_CONFIGSPECIFIC
キーを開き、ハードウェア プロファイル固有の構成情報を格納します。 このキーは、HKEY_LOCAL_MACHINEではなく、ハードウェア プロファイル 固有のブランチのいずれかにルート化されます。 開かれる正確なキーは、 KeyType パラメーターの値によって異なります。
[in] HwProfile
ハードウェア プロファイル値。次のように設定されます。
- Scope が DICS_FLAG_CONFIGSPECIFIC に設定されている場合、HwProfile は、開くキーのハードウェア プロファイルを指定します。
- HwProfile が 0 の場合は、現在のハードウェア プロファイルのキーが開きます。
- Scope がDICS_FLAG_GLOBAL場合、HwProfile は無視されます。
[in] KeyType
開くレジストリ ストレージ キーの種類。次のいずれかの値を指定できます。
DIREG_DEV
デバイスの ハードウェア キー を開きます。
DIREG_DRV
デバイスの ソフトウェア キー を開きます。
デバイスのハードウェア キーとソフトウェア キーの詳細については、「デバイス とドライバーのレジストリ ツリーとキー」を参照してください。
[in] samDesired
要求されたキーに必要なレジストリ セキュリティ アクセス。 REGSAM 型のレジストリ セキュリティ アクセス値の詳細については、Microsoft Windows SDKドキュメントを参照してください。
戻り値
関数が成功すると、このデバイス インスタンスに関するプライベート構成データを格納または取得できる、開かれたレジストリ キーへのハンドルが返されます。
関数が失敗した場合は、INVALID_HANDLE_VALUEを返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
samDesired パラメーターで渡される値によっては、この関数の呼び出し元が Administrators グループのメンバーであることが必要になる場合があります。
RegCloseKey を呼び出して、この関数から返されたハンドルを閉じます。
この関数を呼び出す前に、指定したデバイス インスタンスを登録する必要があります。 ただし、オペレーティング システムでは PnP デバイス インスタンスが自動的に登録されます。 PnP 以外のデバイス インスタンスを登録する方法については、「 SetupDiRegisterDeviceInfo」を参照してください。
要件
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | Desktopユニバーサルの場合は、CM_Open_DevNode_Keyを呼び出します |
Header | setupapi.h (Setupapi.h を含む) |
Library | Setupapi.lib |
[DLL] | Setupapi.dll |
API セット | ext-ms-win-setupapi-classinstallers-l1-1-2 (Windows 10 バージョン 10.0.14393 で導入) |