在DOS环境下玩转Windows注册表
关注+2004-10-15作者:蓝点
注册表编辑器不仅可以在Windows下运行使用,还可以在MS-DOS实模式下运行。有时注册表受到损坏而无法启动Windows时,我们就只有在DOS模式下修复或修改注册表了。注册表的实际物理文件为System.dat和User.dat,也就说注册表中的数据保存在这两个文件中。
导出注册表
此命令可以实现对注册表文件进行备份。
命令格式:Regedit /L:system /R:user /E filename.reg Regpath
参数含义:
/L:system指定System.dat文件所在的路径。
/R:user指定User.dat文件所在的路径。
/E:此参数指定注册表编辑器要进行导出注册表操作,在此参数后面空一格,输入导出注册表的文件名。
Regpath:用来指定要导出哪个注册表的分支,如果不指定,则将导出全部注册表分支。
如果打算将保存在C:\Windows\System.dat和保存在C:\Windows\Profiles\User.dat中所有HKEY_CLASSER_ROOT根键下的分支导出到file.reg中,可以执行如下命令:Regedit /L:C:\Windows\ /R:C:\Windows\Profiles\ /e file1.reg HKEY_CLASSER_ROOT
导入注册表
命令格式:Regedit /L:system /R:user file.reg
参数含义:
/L:system指定System.dat文件所在的路径。
/R:user指定User.dat文件所在的路径。
重建注册表
重建注册表,即重新建立System.dat和User.dat文件。
命令格式:Regedit /L:system /R:user /C file.reg
参数含义:
/L:system指定System.dat文件所在的路径。
/R:user指定User.dat文件所在的路径。
/C:此参数将告诉注册表编辑器,用所指定的.reg文件中的内容重新建立注册表。
如果要用file.reg文件中的内容重新建立整个注册表,并将其保存到C:\Windows\System.dat和C:\Windows\Profiles\User.dat中,可执行命令:Regedit /L:C:\Windows\ /R:C:\Windows\Profiles\ /C file1.reg
删除注册表分支
此命令可以将注册表中的一个子键分支删除。
命令格式为:Regedit /L:system /R:user /D Regpath
参数含义:
/L:system指定System.dat文件所在的路径。
/R:user指定User.dat文件所在的路径。
/C:此参数告诉注册表编辑器,将Regpath所指定的注册表子键分支删除。
恢复注册表
Scanreg.exe可以检查、备份、恢复、修复注册表,此命令存放在“Windows\Command”目录下。
命令格式:Scanreg [/< option >]
参数含义:
/backup参数是备份注册表和相关的配置文件,这些文件分别\windows目录下的System.dat、User.dat、Win.ini、System.ini四个文件,把这些文件压缩成rb——?.cab一个文件,存放在\windows\sysbckup目录下,多次使用此命令会产生多个cab文件,一般从000开始,系统默认最大备份数为5个。可在\Windows\scanreg.ini文件中对最大备份数进行修改,通过修改“maxbackupcopies=?”的数值即可。
/restore参数是选择一个备份进行恢复注册表,此命令不能在Windows 98环境下执行,必须关机后,重新启动进入纯DOS方式下运行。
/fix参数是修复损坏的注册表,此命令也只能在DOS方式下运行。
/comment="< comment >"参数是在备份注册表时增加一些详细的注释到CAB文件中。
恢复遭到破坏的注册表文件,可以使用Scanreg命令进行修复,方法是,首先进入DOS系统操作环境,然后执行以下命令:Scanreg/Restore
此时系统会提示注册表备份情况,包括CAB文件名及备份时间等,用户可以选择要恢复的CAB文件进行恢复。
如果要查看所有的备份文件及同备份有关的部分,可以执行命令:Scanreg /restore /comment
如果注册表有问题,可以使用Scanreg来修复,命令为:Scanreg /fix。