注册表的恢复方法
软件世界
注册表文件是可以用Regedit.exe手工编辑的文件,注册表文件很脆弱,难免会出错。如果幸运,错误不是很大,就算能进入Windows系统,工作也会不正常,常常出现一些莫明其妙的错误。最倒霉的是根本就无法进入Windows系统。
其实Windows98/Me为了避免因注册表文件错误而引起的系统瘫痪,在每天第一次启动Windows时会对注册表文件和系统配置文件做一次备份。注册表文件一般是指c:\windows\目录下的system.dat和user.dat文件,且文件为只读,隐藏属性。用下面的方法可以查看用于Copy注册表文件的应用程序。
通用方法
单击“开始→运行”。在对话框中键入“msconfig”。单击“启动”选项。此时可以看见“ScanRegistry C:\Windows\scanregw.exe/autorun”并且系统默认选择此项。其中的scanregw.exe就是用于Copy注册表文件的应用程序。它的任务就是备份system.dat,user.dat和系统配置文件并将它们放于名为rbxxx.cab的压缩包内,同时把rbxxx.cab压缩包放于c:\windows\sysbckup目录下。此文件夹是隐藏属性。
有了这个备份,当注册表文件出错时就可以用于注册表文件来恢复了。下面介绍恢复的过程和方法。
在c:\windows\command目录下有一个名为scanreg.exe的应用程序,当系统发现注册表文件出错时会自动运行。从c:\windows\sysbckup目录下将rbxxx.cab文件解压并覆盖出错的注册表文件和系统配置文件。这样系统就OK啦!scanreg.exe也可以用于手工恢复,只要在MS-DOS模式下键入scanreg/restore即可。
进阶方法
以上是通用的方法。如果错误是由你自己的修改造成的,还可以用其他的方法恢复,这就要涉及到在DOS方式下对regedit.exe的操作了。具体的命令行参数及其使用方法如下:
语法: Regedit [/L:system] [/R:user] filename1
Regedit [/L:system] [/R:user] /C filename2
Regedit [/L:system] [/R:user] /E filename3 [regpath]
Regedit [/L:system] [/R:user] /D [regpath]
其中:
/L:system指定system.dat文件的存放位置。
/L:user指定user.dat文件的存放位置。
filename1指定引入注册表数据库的文件名。
/C filename2指定形成注册表数据库的文件名。
/E filename3指定导出注册表文件的文件名。
/D 指定删除注册表文件的文件名。
regpath指定导出注册表文件的开始关键字(缺省为全部关键字)
现举几个例子说明regedit.exe在DOS下的使用方法。
例1:将系统注册表数据库registry导出到reg.reg文件中。
regedit /E reg.reg
例2:reg.reg形成系统注册表数据库registry(全部)中。
regedit /C reg.reg
例3:将reg.dat引入系统注册表数据库中(部分)。
regedit reg.dat
例4:将abc开始的关键字导出注册表数据库,并命名为abc.key。
regedit /E abc.key abc
例5:指定system.dat存放在D:\sys中和user.dat存放在E:\sys中,将reg.dat数据文件形成一个新的注册表数据库registry。
regedit /L:D:\sys /R:E:\sys /C reg.dat
例6: 将以abc开始的关键字从注册表数据库中删除。
regedit /E abc
用以上的知识就可以在DOS方式下修改注册表了。
另外,在Windows98系统安装时,在c:\下放了一个系统文件system.1st,它为只读,隐藏属性。它是原始的system.dat文件。如果你没有在“msconfig”的“启动”选项选择“ScanRegistry C:\WINDOWS\scanregw.exe /autorun”,也就不会存在rbxxx.cab文件,那就只能用此文件来覆盖system.dat文件了。具体的操作如下:
在DOS提示符c:\>下键入
attrib -s -h -r system.1st
attrib -s -h -r c:\windows\system.dat
copy system.1st c:\windows\system.dat
attrib +s +h +r system.1st
attrib +s +h +r c:\windows\system.dat
记住用这种方法覆盖原来的system.dat,恢复到最原始状态,启动Windows后必须重装驱动程序。很麻烦吧!为了保住硬盘中的文件只得这样做了。