RegDelete

从注册表中删除子键或值.

新语法 [v1.1.21+]

RegDelete, KeyName , ValueName

参数

KeyName

注册表键的全名, 例如 HKLM\Software\SomeApplication.

必须以 HKEY_LOCAL_MACHINE(或 HKLM), HKEY_USERS(或 HKU), HKEY_CURRENT_USER(或 HKCU), HKEY_CLASSES_ROOT(或 HKCR) 或 HKEY_CURRENT_CONFIG(或 HKCC) 开始.

要访问远程注册表, 请在前面加上计算机名和冒号(或在 [v1.1.21+] 使用反斜杠), 例如 \\workstation01\HKEY_LOCAL_MACHINE.

ValueName

如果为空或省略, 将删除 整个 KeyName. 否则, 请指定要删除值的名称. 要删除 KeyName 的默认值(即注册表中值名显示为 "(默认)" 的值) -- 请指定此参数中为 AHK_DEFAULT.

传统语法

过时的: 不推荐在新脚本中使用此语法. 请使用上面的新语法.

RegDelete, RootKey, SubKey , ValueName

参数

RootKey

必须为 HKEY_LOCAL_MACHINE(或 HKLM), HKEY_USERS(或 HKU), HKEY_CURRENT_USER(或 HKCU), HKEY_CLASSES_ROOT(或 HKCR) 或 HKEY_CURRENT_CONFIG(或 HKCC) 的其中之一.

要访问远程注册表, 请在前面加上计算机名和冒号(或在 [v1.1.21+] 使用反斜杠), 例如 \\workstation01\HKEY_LOCAL_MACHINE.

SubKey

子键名, 例如 Software\SomeApplication.

ValueName

如果为空或省略, 将删除 整个 SubKey. 否则, 请指定要删除值的名称. 要删除 Subkey 的默认值(即注册表中值名显示为"(默认)"的值), 请在指定此参数为 AHK_DEFAULT.

错误处理

[v1.1.04+]: 此命令失败时会抛出异常. 想了解更多信息, 请参阅运行时错误.

如果遇到问题则 ErrorLevel 被置为 1, 否则为 0.

A_LastError 被设置为操作系统 GetLastError() 函数返回的结果.

备注

警告: 对注册表进行删除操作可能引发潜在的问题, 操作前请三思!

要获取和操作多个注册表键或值, 请考虑使用注册表循环.

关于如何访问远程计算机注册表的详情, 请参阅注册表循环中的备注.

要在 32 位脚本中删除注册表 64 位部分的条目或进行相反的操作, 请使用 SetRegView.

RegRead, RegWrite, 注册表循环, SetRegView, IniDelete

示例

新语法 vs. 旧语法.

尽管语法不同, 但这两个例子的效果是一样的: 它们从注册表中删除一个值.

RegDelete, HKEY_LOCAL_MACHINE\Software\SomeApplication, TestValue
RegDelete, HKEY_LOCAL_MACHINE, Software\SomeApplication, TestValue