Поделиться через


Функция 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

Установите значение нулю.

[out] DriverRegKey

Указатель на переменную HANDLE, которая при успешном возвращении содержит дескриптор запрошенного раздела реестра.

Возвращаемое значение

IoOpenDriverRegistryKey возвращает STATUS_SUCCESS, если вызов успешно открыл дескриптор запрошенного раздела реестра.

Замечания

Драйвер должен вызвать ZwClose, чтобы закрыть дескриптор, возвращенный из этой подпрограммы, если доступ больше не нужен.

Разделы реестра, открытые этой подпрограммой, являются нелатилными.

Чтобы подготовить ключи и значения в неизменяемом разделе реестра DriverRegKeyParameters, используйте директиву AddReg из раздела service-install-section, чтобы ссылаться на раздел add-registry-section, содержащий записи с разделом reg-root HKR и подразделом Parameters.

Вызывающие IoOpenDriverRegistryKey должны выполняться в IRQL = PASSIVE_LEVEL в контексте системного потока.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 10 версии 1803
заголовка wdm.h (include wdm.h, ntddk.h или ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

См. также

ZwClose

ACCESS_MASK

DRIVER_REGKEY_TYPE