DOS修改和恢复注册表的技巧
当我们人为错误操作或者恶性病毒感染而使系统切底崩溃,不能进入WINDOWS图形界面时,我们可以在DOS下面尽量挽救系统。
一、使用scanreg/restore
这种方法大家也比较熟悉了,只要在DOS界面下输入该命令,就可以在最近的5个注册表备份里恢复,如果幸运的话,系统就可以马上恢复。但,事实上,用这种方法有个致命的缺陷就是你只有最近5天的注册表备份可以选择。因为控制着自动备份的只会在每天第一次启动电脑时备份,如果哪天你安装的程序或者对注册表的修改比较多,那么你的努力就大多白费了。
二、使用
这种方法可以把错误修复而完全不影响注册表的其他健康部分。这样,我们就能在最大限度上保留我们的工作成果了。使用对注册表实行局部修改的思路是:首先,把注册表里有嫌疑的分支导出;然后,使用edit对它进行分析和修改;最后,把健康的分支重新导入注册表里。好了,我们来看看整个过程的具体操作。
1 导出注册表分支
DOS下导出注册表分支的命令格式是:Regedit[/L:system] [/R:user] /E filename [regpath1]/Lsystem是指定system.dat的路径,/Ruser是指定user.dat的路径,如果不说明,系统就会在默认的路径下;/E:是导出注册表分支的文件名,regpath1是要导出的注册表分支。比如,我们要导出默认注册表关于控制系统启动的分支到里,命令如下:regedit / HKEYLOCALMACHINE\Software\Microsoft\Windows\CurrentVersion\Run
2 对注册表进行分析、修改
DOS下面只要运行edit就能对*.reg文件进行编辑了,因为我们导出的注册表实际上就是文本文件。不过,要正确出引起错误的地方并修改,需要我们平时对注册表积累的经验。下面,我们看一下它的基本结构,以使我们在对它的修改时可以有的放矢。
注册表里面有6个主分支,其中容易引起致命错误而使WINDOWS不能正常启动的分支有:   [HKEY_LOCAL_MACHINE],记录着本地机器的硬件配置以及安装的相应软件,特别是[HKEYLOCALMACHINE\Enum\PCI]这个分支下面的主键值,一旦出错,WINDOWS往往不能启动。如[HKEYLOCALMACHINE\Enum\PCI\VEN_8086DEV7111SUBSYS_00000000REV01\BUS_00DEV_07FUNC01]记录的是硬盘控制器的详
细信息,下面的Logconfig记录着它的各种参数;[HKEY_LOCALMACHINE\Enum\PCI\VEN1002DEV4C42SUBSYS_4C421071REVDC\000800]记录的则是显示卡的重要资料和参数,一旦这里出错,往往会导致WINDOWS在启动时黑屏,然后死掉。
另外还有[HKEYLOCALM ACHINE\Software\Microsoft\Windows\CurrentVersion]里记录着WINDOWS当前版本的信息以及启动时执行的程序等,这是病毒最爱攻击和修改的地方。
至于还有[HKEYCLASSROOT]是记录文件种类及其关联信息的,[HKEYCURRENTUSER]里记录着当前用户的各种信息,包括登陆的密码和各方面的设置等,这些一般不会引起WINDOWS的致命错误,这里也不再详细分析了。
当我们对这些键值分析和修改时,如果碰到什么不清处的地方,可以通过第1点的导出注册表方法,把一些备份注册表的相应分支导出,进行比较。WINDOWS的注册表备份都放在C:\windows\sysbackup里面,如我们要导出第一个注册表备份的[HKEY_LOCAL_MACHINE]分支,那么我们可以先进入该目录,然后键入命令:extract /e rb000.cab .*,先把system.datuser.dat解压出来,再键入命令:regedit /L:system.dat /R:user.dat / HKEYLOCALMACHINE
3 把修改好的注册表分支重新导入
命令的格式为:regedit /L:system /R: 。我们一般都要修改默认的注册表文件,所以在实际使用中只需键入:就行了。  
看完要顶哦
下面还有常用的命令总结
1.导出注册表
  格式:regedit /l:system /R:user / regpath
  含义:/l system 指定system.dat文件的路径
  :/R user 指定user.dat文件的路径
  :/指定表编辑器要进行导出到那个REG文件中的操作
  Regpath:指定要导出哪个注册表的分支,若省略则表示导出整个注册表
  2.导入注册表
  格式:regedit /l:system /R:user
  含义:同上
  3.重建注册表
  格式:regedit /l:system /R:user /
  含义:用指定的注册表文件来重建注册表
  4.删除分支
 格式:regedit /l:system /R:user /D regpath
  含义:都差不多,就是删除/D regpath指定的分支,若删除整个注册表
  5.恢复注册表
  使用来检查,备份,恢复,修复注册表
  格式:Scanreg [windows错误恢复option>=
  参数/backup:, 同时备份同注册表相关的文件(user.dat,system.dat,win.ini,放在sysbackupgh (文件名为rb--?.cab)
  /resore 选择一个备份文件进行恢复注册表(它只能用在纯DOS)
  /fix 修复损坏的注册表(它只能用在纯DOS)
  /comment="comment"在备份注册表进增加一些详细的注释到CAB(",")