ORDeleteKey 函数
从脱机注册表配置单元中删除子项及其值。
语法
DWORD ORDeleteKey(
_In_ ORHKEY Handle,
_In_opt_ PCWSTR lpSubKey
);
参数
-
句柄 [in]
-
脱机注册表配置单元中打开的注册表项的句柄。 此句柄由 ORCreateKey 或 OROpenKey 函数返回。
-
lpSubKey [in, 可选]
-
要删除的文件的名称。 它必须是 Handle 标识的键的子项,但它不能有子项。
如果该子项不存在,函数将返回ERROR_NOT_FOUND。
如果此参数为 NULL,则该函数将删除 Handle 参数指定的键。 如果 Handle 参数指定的键是配置单元的根键,则函数将返回ERROR_INVALID_PARAMETER。
键名称不区分大小写。
返回值
如果函数成功,则返回值为 ERROR_SUCCESS。
如果函数失败,则返回值为 Winerror.h 中定义的非零错误代码。 可以将 FormatMessage 函数与 FORMAT_MESSAGE_FROM_SYSTEM 标志一起使用,以获取错误的泛型说明。 可能的错误代码包括以下内容:
- 如果指定的子项不存在,则函数返回ERROR_FILE_NOT_FOUND。
- 如果指定的子项是注册表配置单元的根键,则函数返回ERROR_INVALID_PARAMETER。
- 如果指定的子项具有子项,则函数将返回ERROR_KEY_HAS_CHILDREN。
备注
如果指定的注册表项存在,则将其标记为已删除。 在关闭其最后一个句柄之前,不会删除已删除的密钥。
要删除的密钥不得具有子项。 若要删除某个键及其所有子项,请使用 OREnumKey 函数枚举子项并单独删除它们。
只能对已删除的密钥调用 ORCloseKey 函数;所有其他脱机注册表操作都失败。 如果已删除的密钥是通过调用 ORCreateKey 显式创建的,则会在关闭已删除密钥的最后一个句柄时释放与该密钥关联的资源。
要求
要求 | 值 |
---|---|
可再发行组件 |
Windows 脱机注册表库版本 1.0 或更高版本 |
标头 |
|
DLL |
|
另请参阅