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