SetupDiCreateDeviceInterfaceRegKeyW 関数 (setupapi.h)
SetupDiCreateDeviceInterfaceRegKey 関数は、デバイス インターフェイスに関する情報を格納するためのレジストリ キーを作成し、キーへのハンドルを返します。
構文
WINSETUPAPI HKEY SetupDiCreateDeviceInterfaceRegKeyW(
[in] HDEVINFO DeviceInfoSet,
[in] PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
DWORD Reserved,
[in] REGSAM samDesired,
[in, optional] HINF InfHandle,
[in, optional] PCWSTR InfSectionName
);
パラメーター
[in] DeviceInfoSet
レジストリ キーを作成するインターフェイスを含む デバイス情報セット へのハンドル。 デバイス情報セットにリモート要素を含めてはいけません。
[in] DeviceInterfaceData
DeviceInfoSet のデバイス インターフェイスを指定するSP_DEVICE_INTERFACE_DATA構造体へのポインター。 このポインターは、 SetupDiCreateDeviceInterface によって返される可能性があります。
Reserved
予約済み。 ゼロを指定してください。
[in] samDesired
作成中のキーに対して呼び出し元が要求するレジストリ セキュリティ アクセス。 REGSAM 型のレジストリ セキュリティ アクセス値の詳細については、Microsoft Windows SDKドキュメントを参照してください。
[in, optional] InfHandle
新しく作成されたキーに対して実行される DDInstall セクションを含む、開いている INF ファイルへのハンドル。 このパラメーターは省略可能であり、 NULL にすることができます。 このパラメーターが NULL でない場合は、 InfSectionName も指定する必要があります。
[in, optional] InfSectionName
InfHandle で指定された INF ファイル内の INF DDInstall セクションの名前へのポインター。 このセクションは、新しく作成されたキーに対して実行されます。 このパラメーターは省略可能であり、 NULL にすることができます。 このパラメーターを指定する場合は、 InfHandle も指定する必要があります。
戻り値
SetupDiCreateDeviceInterfaceRegKey が成功した場合、関数は、インターフェイス情報を格納および取得できる要求されたレジストリ キーへのハンドルを返します。 SetupDiCreateDeviceInterfaceRegKey が失敗した場合、関数はINVALID_HANDLE_VALUEを返します。 拡張されたエラー情報を取得するには、GetLastError を呼び出します。
解説
この関数の呼び出し元は、Administrators グループのメンバーである必要があります。
デバイス インターフェイスの要求されたキーが既に存在する場合、 SetupDiCreateDeviceInterfaceRegKey はそのキーへのハンドルを返します。それ以外の場合、 SetupDiCreateDeviceInterfaceRegKey は 、指定されたデバイス インターフェイスの新しい不揮発性レジストリ キーを作成します。 この関数の呼び出し元は、デバイス インターフェイスのプライベート構成データをこのキーに格納できます。 デバイスのドライバーは、 IoXxx ルーチンを使用してこのキーにアクセスできます。
RegCloseKey を呼び出して、この関数から返されたハンドルを閉じます。
レイアウト ファイル (INF バージョン セクションの LayoutFile エントリで指定) を使用するインストールの場合、SetupDiCreateDeviceInterfaceRegKey が呼び出される前に、SetupOpenAppendInfFile (Windows SDK ドキュメントで説明) の呼び出しによってレイアウト ファイルを開く必要があります。
DeviceInfoSet で指定されたデバイス情報セットには、ローカル コンピューター上の要素のみが含まれている必要があります。
注意
setupapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetupDiCreateDeviceInterfaceRegKey を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | setupapi.h (Setupapi.h を含む) |
Library | Setupapi.lib |