6.10 如何从"禁用注册表编辑器"中恢复 Q: 系统是英文版Windows XP SP1,今天想测试一下禁用注册表编辑器,导入如下.reg文 件: -------------------------------------------------------------------------- Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System] "DisableRegistryTools"=dword:00000000 -------------------------------------------------------------------------- 测试过程中,发现System这个子键缺省并不存在,键值DisableRegistryTools自然也 就缺省不存在。在regedit.exe中将DisableRegistryTools的键值数据从0改成1,再 次执行regedit.exe时提示"注册编辑已被管理员停用",执行Tweak UI时提示"Tweak UI has been disabled by your administrator"。 至此一切都在预想之中。现在试图恢复,双击导入前述.reg文件,却得到一个意料之 外的提示"注册编辑已被管理员停用"。执行regedit.exe /s enable.reg,同样无济 于事。事实上以前用类似的办法解决过Windows 9x/NT/2000上同一问题,为什么这次 对XP无效,而Google上搜索到的此类文章99%地号称对XP有效。 顺便说一句,我还尝试了下列.reg文件。当regedit.exe未被禁用时,无疑它们是可 以达到预期目的的,可现在,它们可耻地失败了。 -------------------------------------------------------------------------- Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System] "DisableRegistryTools"=- -------------------------------------------------------------------------- Windows Registry Editor Version 5.00 [-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System] -------------------------------------------------------------------------- 我可不想为此写一个Win32程序或其它什么脚本,一定有官方解决之道。 A: 小四 2004-08-07 18:34 Google所能找到的那些白痴以及抄写狂们,真是令人没了言语。很不幸,从XP开始微 软增强了安全限制,以前的办法不再适用于XP及其后续版本。 运行gpedit.msc,访问 用户配置 \管理模板 \System \Prevent access to registry editing tools 这里有三种选择: 未配置(缺省选择) 已启用 已禁用 要做的就是选择"已禁用",这将导致键值DisableRegistryTools被删除,然后可以选 择未配置(彻底恢复),这是不必要的操作。现在一切都恢复了。 A: "Ma Daemon" 2005-02-01 13:04 参DDK DOC中的"Summary of INF Sections"。编辑enable.inf文件如下: -------------------------------------------------------------------------- [Version] Signature = "$Windows NT$" [DefaultInstall] AddReg = DefaultInstall.AddReg [DefaultInstall.AddReg] HKCU,Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableRegistryTools,0x00010001,0 -------------------------------------------------------------------------- 鼠标右键选中enable.inf文件,点击Install即可。在英文版XP SP1/SP2、2003上测 试通过。不喜欢GUI的话,可以在cmd.exe中执行如下命令: rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 .\enable.inf 编辑delete.inf文件如下: -------------------------------------------------------------------------- [Version] Signature = "$Windows NT$" [DefaultInstall] DelReg = DefaultInstall.DelReg [DefaultInstall.DelReg] HKCU,Software\Microsoft\Windows\CurrentVersion\Policies\System,DisableRegistryTools,0x00010001 -------------------------------------------------------------------------- rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 .\delete.inf