IoOpenDriverRegistryKey 関数 (wdm.h)
IoOpenDriverRegistryKey ルーチンは、特定のドライバーのドライバー固有のレジストリ キーへのハンドルを返します。
構文
NTSTATUS IoOpenDriverRegistryKey(
[in] PDRIVER_OBJECT DriverObject,
[in] DRIVER_REGKEY_TYPE RegKeyType,
[in] ACCESS_MASK DesiredAccess,
[in] ULONG Flags,
[out] PHANDLE DriverRegKey
);
パラメーター
[in] DriverObject
DRIVER_OBJECT構造体へのポインター。 この構造体は、呼び出し元のドライバーのドライバー オブジェクトである必要があります。
[in] RegKeyType
要求されたレジストリ キーの型を示す DRIVER_REGKEY_TYPE 型の列挙。
[in] DesiredAccess
キーに必要なアクセス権を表す ACCESS_MASK 値を指定します。 各KEY_XXXアクセス権の説明については、「 ZwCreateKey」 を参照してください。
[in] Flags
0 に設定します。
[out] DriverRegKey
正常に戻った場合に、要求されたレジストリ キーへのハンドルを含む HANDLE 変数へのポインター。
戻り値
呼び出しによって要求されたレジストリ キーへのハンドルが正常に開かれた場合、IoOpenDriverRegistryKey はSTATUS_SUCCESSを返します。
注釈
ドライバーは、アクセスが不要になったときにこのルーチンから返されるハンドルを閉じる には、ZwClose を呼び出す必要があります。
このルーチンによって開かれたレジストリ キーは、不揮発性です。
変更できない DriverRegKeyParameters レジストリ キーの下にキーと値をプロビジョニングするには、service-install-section の AddReg ディレクティブを使用して、 の reg-root HKR
とサブキーParameters
を持つエントリを含む add-registry-section セクションを参照します。
IoOpenDriverRegistryKey の呼び出し元は、システム スレッドのコンテキストで IRQL = PASSIVE_LEVELで実行されている必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 バージョン 1803 |
Header | wdm.h (wdm.h、ntddk.h、または ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |