多系统下userinit.exe启动项被误删除的解决方法
系统反复注销无法登录的解决之道
今天一开机,按惯例进入XP系统,本想爽一下游戏,没有想到出现的却是正在加载系统设置……过一会又正在保存系统设置,就是进入不了系统,全面晕倒……
说明一下本机系统环境:C盘安装win2000 server,D盘安装Win XP sp2并为NTFS分区。
仔细回想了一下,昨天由于使用风云防火墙预览版,查看启动项时误删除了userinit.exe的启动项,这一下系统就陷入了痛苦的无限循环启动的困境中了。
于是在网上相找了相关的解决方法。根据方法所示,(隐去下载了不带ERD2003版的PE无法操作的苦恼数十字……)下载了winpe带erd2003的版本,本想用以前那个破U盘做个启动盘,但试了一下FDD和HDD的方式,都无法引导,遂郁闷中……还好,因为我是win2000 Server加xp sp2的双系统,一个系统倒下了,还有一个系统可用,于是进入2000中,安装Nero7.5,刻盘,重启,BIOS中设置从光驱引导,等待……终于进入了WIN PE,根据方法,应该使用PE中的注册表编辑器编辑注册表,但当我选择载入E盘注册表时,却出现了读取错误#()*·¥—#实在无语!(运行其中自带工具的注册表编辑器时,会提示是否载入远程注册表,你选是,就会出现多个选单,如果你安装的是多系统的话),
以下相关内容是要修改的项:
userinit.exe位于系统目录下,Win XP 系统中就是在C:\WINDOWS\SYSTEM32\下面,文件属性中的描述是
:Userinit Logon Application,同时在注册表中有一个键值指向这个文件:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit
此键值为:C:\WINDOWS\system32\userinit.exe, ——注意最后带逗号。
在登录系统后首先将读取这个键值并执行其中指向的程序,如果此键值被某些病毒修改或userinit.exe文件被误删除,就会出现登录系统后立即注销的情况。
所以必须想法恢复这一注册表键值。
试着修改了一下提示导入的第一个注册表,改成XP系统盘中Userinit.exe的位置,呵呵,2000也无法启动了。这下感到有点小小的崩溃了,很显然这是win2000的键值,于是改回系统盘符:\winnt\system32\userinit.exe。
似乎有点想用镜像恢复系统的冲动,但在系统GHOST镜像备份之后,系统环境又发生了很大的改变,还是忍住了。
经过仔细搜索各种相关文章,发现一个工具十分有用,ScanVirus.exe,于是赶紧下载(现在发现WIN PE的好处了,当启用了网络支持时,就可以用ADSL拨号并使用IE下载文件了,呵呵,不错不错),它的作用可以导出多系统中的注册表,并在WIN PE中进行编辑,然后再导入本地系统。于是导出XP系统注册表,然后在Win PE中运行REGEDT,定位到HKEY_LOCAL_MACHINE,在在 File(文件)菜单上,选择加载配置单元, 英文系统则为Load Hive。在这里要注意,ScanVirus.exe运行后,会在XP的系统根目录下生成SysRegBackup文件夹,你XP的注册表就备份出来可以修改了。在这里需要加载的配置单元是SOFTWARE(浏览到备份目录,选择备份的software文件,),在加载后会要求你输入配置名称,输入一个你能记住的如pchwz就行了,不要和其它已有的重名,按上面提到的定位到\Microsoft\Windows NT\CurrentVersion\Winlogon\,在右边窗口发现userinit键值不在,于是创建一个,把键值定为:D:\WINDOWS\system32\userinit.exe, 然后点左边目录中的DFYDXF卸载配置单元,并到SysRegBackup文件夹运行“从备份恢复.Cmd”这一命令脚本,即可把改好的注册表导入到本地硬盘的XP系统中去了。
赶快注销WIN PE,重新启动电脑,呵呵,XP系统终于又重见天日了,回到正常的系统环境下的感觉真好。
小结:通过实践,才发现本以为很简单的操作会在实现的过程中遇到这样那样的问题,但如果你不放弃,并灵活的采用各种可能的方法,最终还是会解决遇到的问题的。而且,通过以上方法,也完全可以对病毒引起的userinit.exe镜像劫持进行辅助修复。
本文地址:http://www.pchwz.cn/pc-ZhiShiJiQiao/1KAHC00CH5.html,转载请注明出处.
转截请注明:文章来自 pc捍卫者 http://www.pchwz.com
本站发布此文为传递更多信息之目的,不表明pc捍卫者赞同其观点