Функция ZwDeleteKey (wdm.h)

Подпрограмма ZwDeleteKey удаляет открытый раздел из реестра.

Синтаксис

NTSYSAPI NTSTATUS ZwDeleteKey(
  [in] HANDLE KeyHandle
);

Параметры

[in] KeyHandle

Обработайте раздел реестра, который требуется удалить. Дескриптор создается путем успешного вызова ZwCreateKey или ZwOpenKey.

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

ZwDeleteKey возвращает значение NTSTATUS. Возможные возвращаемые значения:

  • STATUS_SUCCESS

  • STATUS_ACCESS_DENIED

  • STATUS_INVALID_HANDLE

  • STATUS_CANNOT_DELETE (см. примечания)

Комментарии

Перед вызовом ZwDeleteKey убедитесь, что все ключи и значения в заданном ключе удалены. Сначала удалите каждый подраздел, начиная с конечных ключей, и выработайте свой путь вверх.

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

Вызов ZwDeleteKey приводит к тому, что дескриптор, указанный в параметре KeyHandle , и все остальные дескриптор удаленного ключа становятся недействительными. После того как вызов ZwDeleteKey делает дескрипторы ключей недействительными, необходимо вызвать ZwClose , чтобы закрыть дескрипторы ключей.

Дополнительные сведения о работе с разделами реестра см. в статье Использование реестра в драйвере.

Если вызов этой функции выполняется в пользовательском режиме, следует использовать имя "NtDeleteKey" вместо "ZwDeleteKey".

Для вызовов из драйверов режима ядра версии NtXxx и ZwXxx подпрограммы Собственные системные службы Windows могут вести себя по-разному, так как они обрабатывают и интерпретируют входные параметры. Дополнительные сведения о связи между версиями подпрограмм NtXxx и ZwXxx см. в разделе Использование версий NT и Zw подпрограмм собственных системных служб.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Правила соответствия DDI HwStorPortProhibitedDIs(storport), IrqlZwPassive(wdm), PowerIrpDDis(wdm), ZwRegistryCreate(storport), ZwRegistryCreate(storport), ZwRegistryCreate(wdm), ZwRegistryOpen(storport), ZwRegistryOpen(storport), ZwRegistryOpen(wdm)

См. также раздел

Использование версий nt и Zw собственных системных служб

ZwCreateKey

ZwOpenKey