次の方法で共有


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-sectionAddReg ディレクティブを使用して、 の 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

こちらもご覧ください

ZwClose

ACCESS_MASK

DRIVER_REGKEY_TYPE