SetupDiCreateDeviceInterfaceRegKeyA 関数 (setupapi.h)
SetupDiCreateDeviceInterfaceRegKey 関数は、デバイス インターフェイスに関する情報を格納するためのレジストリ キーを作成し、キーへのハンドルを返します。
構文
WINSETUPAPI HKEY SetupDiCreateDeviceInterfaceRegKeyA(
[in] HDEVINFO DeviceInfoSet,
[in] PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
DWORD Reserved,
[in] REGSAM samDesired,
[in, optional] HINF InfHandle,
[in, optional] PCSTR 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 を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | setupapi.h (Setupapi.h を含む) |
Library | Setupapi.lib |