IoOpenDeviceInterfaceRegistryKey 関数 (wdm.h)
IoOpenDeviceInterfaceRegistryKey ルーチンは、特定のデバイス インターフェイス インスタンスに関する情報を格納するためのレジストリ キーへのハンドルを返します。
構文
NTSTATUS IoOpenDeviceInterfaceRegistryKey(
[in] PUNICODE_STRING SymbolicLinkName,
[in] ACCESS_MASK DesiredAccess,
[out] PHANDLE DeviceInterfaceRegKey
);
パラメーター
[in] SymbolicLinkName
デバイス インターフェイス インスタンスを識別する文字列へのポインター。 この文字列は、IoGetDeviceInterfaces、IoGetDeviceInterfaceAlias、または IoRegisterDeviceInterface への以前の呼び出しから取得されました。
[in] DesiredAccess
KEY_READ、 KEY_WRITE、KEY_ALL_ACCESS など、呼び出し元がキーに対して必要とするアクセスを表すACCESS_MASK値を指定します。 各KEY_XXX アクセス権の説明については、「ZwCreateKey」を参照してください。
[out] DeviceInterfaceRegKey
呼び出しが成功した場合は、要求されたレジストリ キーへの返されたハンドルへのポインター。
戻り値
呼び出しが成功した場合、IoOpenDeviceInterfaceRegistryKey はSTATUS_SUCCESSを返します。 エラーの戻り値として考えられるのは、次のとおりです。
リターン コード | 説明 |
---|---|
|
シンボリック リンク名のエラーが原因で、ルーチンがデバイス インターフェイス インスタンスのレジストリ キーを見つけることができませんでした。 |
|
シンボリック リンク名のエラーが原因で、ルーチンがデバイス インターフェイス インスタンスのレジストリ キーを見つけることができませんでした。 |
|
シンボリック リンク名のエラーを示している可能性があります。 |
注釈
IoOpenDeviceInterfaceRegistryKey は、 SymbolicLinkName で指定されたデバイス インターフェイス インスタンスのレジストリ キーの非揮発性サブキーを開きます。 ドライバーは、カメラの既定の解像度など、デバイス インターフェイスのこのインスタンスに固有の情報をこのサブキーに格納できます。 ユーザー モード アプリケーションは、 SetupDiXxx ルーチンを使用してこのサブキーにアクセスできます。
アクセスが不要になった場合、ドライバーは ZwClose を呼び出して、このルーチンから返されたハンドルを閉じる必要があります。
IoOpenDeviceInterfaceRegistryKey の呼び出し元は、システム スレッドのコンテキストで IRQL = PASSIVE_LEVELで実行されている必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 以降で使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (「解説」セクションを参照) |
DDI コンプライアンス規則 | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |