我安装的 Windows XP 注册表已损坏。蠕虫(已被删除)劫持了该HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
条目(该条目的值应为Userinit=C:\windows\system32\userinit.exe
当蠕虫被清除后,损坏的条目被完全删除,现在系统在尝试登录后会立即自动注销。无论用户和启动模式如何,都无法登录任何帐户。
纠正此行为所需的唯一操作是恢复注册表项,但我想不出任何不登录帐户即可编辑注册表的方法。我尝试远程连接到注册表,但计算机上未启用所需的服务。
我尝试使用 BartPE 启动 CD 在同一台机器上进行启动,但是我找不到任何方法来编辑 C:\Windows 安装上的注册表 - 运行 regedit 只会修改内存中的 X:\I386\ 注册表。
那么,我可以使用什么来修改无法登录的 Windows XP 实例的注册表,以便我可以再次登录?
多谢你们。
编辑:修复成功了。正如所希望的那样,自动注销问题的解决方案是简单地将上面提到的值添加到相应的注册表项中。
可以使用 BartPE 启动 CD 来完成此操作,如下面接受的答案中所述,但我使用了另一个答案中提到的脱机 NT 注册表编辑器软件。步骤如下:
- 从 NT 注册表编辑器 CD 启动
- 按照指示操作,直到加载适当的引导扇区。
- 不要使用默认选项来修改密码或用户帐户,而是键入“
software
”来编辑该配置单元。 - 输入“
9
”进入基于命令行的注册表编辑器。 - 输入“
cd Microsoft
”(输入)“cd Windows NT
”(输入)“cd CurrentVersion
”(输入)“cd Winlogon
”(输入) - 键入“
nv 1 Userinit
”在 Winlogon 项下创建新值 - 键入“
ev Userinit
”以编辑新值,并在出现提示时键入“C:\windows\system32\userinit.exe
”(输入) - 键入“
q
”退出注册表编辑器,退出系统后,按照指示将配置单元写回磁盘。 - 重新启动计算机并登录 - 问题解决。
(通用“警告:备份您的注册表”免责声明)
答案1
您应该能够从 BartPE 启动 CD 加载注册表配置单元。您可以按照列出的说明进行操作这里:
将配置单元加载到注册表中
- 打开注册表编辑器
- 在注册表树(左侧)中,单击 HKEY_USERS 或 HKEY_LOCAL_MACHINE 键
- 在文件菜单,点击加载 Hive。
- 在在看,单击包含要加载的配置单元的驱动器、文件夹或网络计算机和文件夹。
- 点击打开。
- 在键名称,键入要分配给配置单元的名称,然后单击好的。
警告
- 错误地编辑注册表可能会严重损坏您的系统。在更改注册表之前,您应该备份计算机上所有有价值的数据。
答案2
您可以使用以下方式编辑 Windows XP 注册表离线 NT 密码和注册表编辑器可以找到这里
记得备份你的注册表文件。
答案3
要在未启动服务的计算机上远程编辑服务,这些命令将用于启动服务
首先改变服务的模式
SC \\machinename config servicename Start= auto
然后启动或者停止该服务。
SC \\machinename Start servicename
整个手动操作的过程比上面提到的使用 BartPE 要困难得多。但这只是完成上述远程注册表编辑的一种方法。
答案4
您有另一台可用的 Windows 计算机吗?如果它们已联网,您应该能够在工作计算机上使用 regedit 来编辑损坏计算机的注册表。
出于兴趣,您是否尝试过从 Windows XP 安装盘启动来执行修复?