zwDeleteKey 函数 (wdm.h)

ZwDeleteKey 例程从注册表中删除打开的项。

语法

NTSYSAPI NTSTATUS ZwDeleteKey(
  [in] HANDLE KeyHandle
);

参数

[in] KeyHandle

要删除的注册表项的句柄。 句柄是通过成功调用 ZwCreateKeyZwOpenKey 创建的。

返回值

ZwDeleteKey 返回 NTSTATUS 值。 可能的返回值包括:

  • STATUS_SUCCESS

  • STATUS_ACCESS_DENIED

  • STATUS_INVALID_HANDLE

  • STATUS_CANNOT_DELETE (请参阅备注)

注解

在调用 ZwDeleteKey 之前,请确保已删除给定键下的所有键和值。 首先删除每个子项,从叶键开始,并按自己的方式操作。

必须打开句柄才能使 DELETE 访问此例程成功。 有关详细信息,请参阅 ZwCreateKeyDesiredAccess 参数。

调用 ZwDeleteKey 会导致 KeyHandle 参数中指定的句柄以及已删除密钥的所有其他句柄变为无效。 调用 ZwDeleteKey 使键句柄失效后,必须调用 ZwClose 以关闭键句柄。

有关使用注册表项的详细信息,请参阅 在驱动程序中使用注册表

如果在用户模式下调用此函数,则应使用名称“NtDeleteKey”而不是“ZwDeleteKey”。

对于来自内核模式驱动程序的调用,Windows Native System Services 例程的 NtXxxZwXxx 版本在处理和解释输入参数的方式上的行为可能有所不同。 有关例程的 NtXxxZwXxx 版本之间的关系的详细信息,请参阅 使用本机系统服务例程的 Nt 和 Zw 版本

要求

要求
目标平台 通用
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 符合性规则 HwStorPortProhibitedDDI (storport) IrqlZwPassive (wdm) PowerIrpDDis (wdm) ZwRegistryCreate (storport) 、ZwRegistryCreate (storport) , ZwRegistryCreate (wdm) ZwRegistryOpen (storport) 、ZwRegistryOpen (storport) 、 ZwRegistryOpen (wdm)

另请参阅

使用本机系统服务例程的 Nt 和 Zw 版本

ZwCreateKey

ZwOpenKey