Windows 2000 将它的配置信息存储在名为注册表的数据库中,其中包含了每个计算机用户的配置文件,以及有关系统硬件、已安装的程序和属性设置等信息,Windows 2000 在运行过程中要一直引用这些信息。注册表是以二进制形式存储在硬盘上,错误地编辑注册表可能会严重损坏系统。所以,在更改注册表之前,强烈建议备份注册表信息。为了防止在修改注册表的时候发生致命错误,有必要了解一下注册表文件的备份和恢复方法。除此之外,为了研究注册表的结构,还可以将注册表中的某一主键或子键保存为文本文件,或者打印出来,这项工作同样需要了解注册表文件的导入与导出方法。
A、完全备份/恢复注册表
如果要完全备份注册表,可以在注册表编辑器Regedit.exe中单击注册表菜单下的导出注册表文件命令,并选择导出范围为全部,将注册表文件(*.reg)保存在硬盘上即可。要完全还原注册表的方法同上,只需要单击注册表菜单下的导入注册表文件命令,然后选择硬盘上相应的备份注册表文件即可。顺便提一下,Regedit.exe(16位的注册表编辑器)包含在 Windows 2000 中的主要原因是其搜索功能比较强,用户同样可以使用 Regedit.exe 更改注册表,但其功能不够全面(如无法设置注册表项的权限),可能无法正确查看或编辑个别数据类型。因此,建议只将 Regedit.exe 用于搜索及注册表的完全备份,在需要编辑注册表时,使用system32目录下的 Regedt32.exe(它是32位注册表编辑器,提供了一些高级功能,采用多窗口格式显示各预定义项,查看起来比较方便)。
B、部分备份注册表
如果只需要保存一个根键或者一个主键(子键)等一般的备份,在Regedt32中就可以比较方便地完成。首先选择要保存的主键或子键,然后再单击注册表菜单下保存项命令,在弹出的保存项对话框中输入要保存的注册表文件的文件名,扩展名建议使用reg,便于今后查找。
在保存某些主键或子键时,因为其使用的用户不同,或者是该主键或子键正在被系统使用,会出现禁止访问的警告:权限不足,无法保存项。这时系统管理员可以使用安全菜单下的权限命令,对这些主键或子键的用户赋予完全控制的权限(具体操作参见第15期《电脑报》软件世界中Windows 2000 注册表直通车(上)一文),然后就可以保存该项了。
将注册表主键或子键保存为项文件,无法直? 文本编辑器打开查看,所以想研究注册表的结构的话,可以将注册表文件导出为文本文件,操作的方法是选择注册表菜单下将子目录树另存为命令,将其命名为扩展名为TXT的文件后,再单击保存按钮即可。以后我们就可以使用Windows的写字板或记事本来查看这个文本文件了。如果需要,也可以使用同一菜单下的打印子目录树命令来打印。
C、部分恢复/导入注册表
部分恢复/导入注册表有两种方法,第一种是还原项,即使用以前备份的注册表文件或其它注册表文件来覆盖现有的主键。首先在Regedt32注册表编辑器中,将光标移至要还原的主键上,再选择注册表菜单下的还原命令,并在还原项窗口中选择要还原的注册表文件,单击打开按钮,确认覆盖现有主键后,即可还原该项到当前选定的项上。注意:被选择还原的文件必须与注册表编辑器中所选择的主键内容吻合,即原先保存的注册表项只能还原到原先的位置。
另外一种方法是加载配置单元。加载配置单元和卸载配置单元。这两个命令只有在[HKEY_USERS]或[HKEY_LOCAL_MACHINE]这两个预定义项窗口中才有效,将配置单元加载到注册表中后,配置单元成为其中一个项的子项。具体做法是在Regedt32注册表编辑器中,先用鼠标选择上述两个预定义项中的一个主键,再选择注册表菜单下的加载配置单元命令,接着在加载配置单元对话框内选择要加载的注册表文件,单击打开按钮后出现加载配置单元对话框,在对话框的项名称文本框内输入新主键的名称,如.ChenNai,再单击确定按钮,这样你就发现在当前主键的下面出现了一个新的主键(.ChenNai)。如果要卸载该配置单元,也很简单,选中该主键后,选择注册表菜单下卸载配置单元命令即可。
上述两种方法的不同之处在于加载配置单元引入的主键可以是注册表内原先没有的内容。
最后说一下,Windows 2000中注册表文件的位置,同Windows 9X一样,Windows 2000的注册表也分为两个部分,但包括多个文件,其中用户配置文件保存在根目录Documents and Settings下用户名的目录中,包括两个隐藏文件:NTUSER.DAT、NTUSER.INI及ntuser.dat.LOG日志文件。系统配置文件位于Windows 2000系统目录下的SYSTEM32\CONFIG中,包括DEFAULT、SOFTWARE、SYSTEM、AppEvent.Evt、SecEvent.Evt、SysEvent.Evt等多个隐藏文件及其相应的.LOG(日志)文件和.SAV文件。这些注册表文件在Windows 2000运行时无法使用其它工具打开,这一点与Windows 9X下的system.dat及user.dat不同。