Win2000中的注册表

Author: 秋水 Date: 2000年 第22期

#1  Windows注册表概述
  注册表是Windows系统存储关于计算机配置信息的数据库,包括了系统运行时需要调用的运行方式的设置。Windows注册表中包括的项目有:每个用户的配置文件、计算机上安装的程序和每个程序可以创建的文档类型、文件夹和程序图标的属性设置、系统中的硬件、正在使用的端口等。
  注册表按层次结构来组织,由项、子项、配置单元和值项组成。注册表中包括如下各项:
  ●HKEY_CURRENT_USER:包含当前登录用户的配置信息的根目录。用户文件夹、屏幕颜色和“控制面板”设置存储在此处。该信息被称为用户配置文件。
  ●HKEY_USERS:包含计算机上所有用户的配置文件的根目录。HKEY_CURRENT_USER是HKEY_USERS的子项。
  ●HKEY_LOCAL_MACHINE:包含针对该计算机(对于任何用户)的配置信息。
  ●HKEY_CLASSES_ROOT:是HKEY_LOCAL_MACHINE\Software的子项。此处存储的信息可以确保当使用Windows资源管理器打开文件时,将使用正确的应用程序打开对应的文件类型。
  ●HKEY_CURRENT_CONFIG:包含本地计算机在系统启动时所用的硬件配置文件信息。
  对于注册表的修改,需要使用专门的编辑器完成,在Windows中为我们提供了这个工具。而在Win2000中微软新提供了一个针对多用户系统的注册表编辑器,这就是我们本期将主要介绍的内容。
  在此要特别强调一点:一般来讲注册表不须要用户自己修改,因为其中包括了Windows启动和运行所必须的全部配置,错误的设置将会导致应用程序无法运行、系统出错,直至系统崩溃或无法启动。如果需要对注册表进行编辑,务必事先进行注册表项目备份!
#1  Win2000中的注册表编辑器
  在Win2000中,系统提供了两个注册表编辑工具,一个是从Win9x延续下来的,一个是新版本操作系统提供的。在此我们要介绍的是后者。
#1  1.程序的启动
  单击系统开始按钮,在关联菜单中选择“运行”命令,激活相关界面。在其中的文本框中输入“regedt32”,并击回车键确定,即可启动程序,其界面形式如^22020201a^1所示。
#1  2.向注册表中添加新的项或子项
  如果需要将一些系统运行设置添加到系统注册表中,而这些信息又不是以*.reg格式提供的,此时只能使用注册表编辑器完成,具体步骤如下:
  启动程序,在程序左边的树形列表窗口中选择将在其下添加新项的项或子项。单击程序界面菜单条中的“编辑”项,并从关联的下拉菜单中选择“添加项”命令,此时会出现如^22020201b^2所示界面。
  在图2所示窗口中的“项名称”文本框中输入需要添加的新项名称,对于指定类别,可根据自己的需要设置,当然如果不添加也可以。最后单击确定按钮,返回程序界面即可。
  如果需要在HKEY_USERS或HKEY_LOCAL_MACHINE主项中添加新的内容,方法有所不同,此时“编辑”菜单中的“添加项”命令是不允许使用的。正确的添加方法是:单击程序界面菜单条“文件”项下拉菜单中的“加载配置单元”命令,程序会给出一个列表框,在其中选择需要加载的对象,之后单击“打开”按钮,程序会给出“加载配置单元”对话框,在其中输入新建项目名称,之后单击确定按钮即可。在此需要说明的是,加载配置单元主要用于在不同的机器中传递注册表配置,对于配置相同的机器,这样可以节省系统配置时间。
#1  3.给注册表的值项赋值
  所谓值项,就是注册表中的含数据字符串的子项,这个设置以字符串方式体现,常见的设置取值包括二进制数值和字符串明码以及DWORD(双字节)值方式。给值项赋值的具体步骤是:首先在注册表编辑器界面左边窗口中选择需要赋值的项或子项,从程序界面菜单条“编辑”项下拉菜单中选择“添加数值”命令,此时会出现如^22020201c^3所示界面。在其中的“数值名称”文本框中输入需要创建的值项(子项)名,在“数据类型”下拉文本框中选择赋值类型,其中各列表项的含义为:
  ●REG_BINARY:二进制值;
  ●REG_DWORD:DWORD值;
  ●REG_EXPAND_SZ:可扩展字符串;
  ●REG_MULTI_SZ:多重字符串;
  ●REG_SZ:数据字符串。
  根据自己的需要选择,之后,单击确定按钮。注意,选择的赋值类型不同,程序会给出关联的设置界面,在其中设置具体取值,之后进行确定就可以了。
  如果需要修改或编辑值项的赋值,可使用鼠标双击程序界面右边窗口中的赋值列表项,程序会给出相应的赋值编辑器,在其中进行编辑或修改即可,非常简单。
#1  4.以关键字方式查找
  由于注册表中包括的项目非常多,当需要从中定位自己需要的项或子项时,使用查找功能是非常必要的。该项功能的具体用法如下:首先在程序界面中选择需要扫描的项或子项所在窗口,单击界面菜单条“察看”项下拉菜单中的“搜索项”命令,此时会出现如^22020201d^4所示界面。在“查找内容”文本框中输入需要查找的内容关键字,并选择相应的扫描控制方式,之后,单击“查找下一个”按钮确定即可。
#1  5.删除注册表中无用的子项或值项
  虽然现在的应用程序都设计有自动卸载功能,但是多数程序并不能完全将自己在注册表中添加的项目删除,这也会导致注册表日益增大,时间长了会导致系统运行变慢等不良现象发生。如果你大致了解注册表的组成,可以将这些无用的设置从注册表中删除,当然这项操作具有一定的风险,使用前应该备份注册表数据文件。对于删除注册表中的项目,非常简单:首先在程序界面中找到需要删除项目所在的主项窗口,然后定位需要删除的值项,一般对于软件注册项都包括在HKEY_CURRENT_USER项下的Software子项中。单击程序界面菜单条“编辑”项下拉菜单中的“删除”命令或者是直接按下“Delete”键,程序会给出删除确认对话框,单击“Yes”按钮确认即可。
  此外,对于配置单元项,是不能直接删除的,须要按照如下方法操作:选择需要删除的配置单元列表项,之后从程序界面“文件”下拉菜单中选择“卸载配置单元”命令。
#1  6.保存注册表项目
  对于保存注册表项目,可按以下步骤操作:首先在程序界面中选择需要保存的注册表项目对象,之后从界面“文件”下拉菜单中选择“保存项”命令,程序会给出相应的对话框,在其中设置保存文件的文件名、保存路径,对于文件类型,应设置为“所有文件”,之后,单击界面中的“保存”按钮即可。由于Win2000的注册表编辑器根据不同的项给出了单独的窗口,所以,对于完整的保存注册表,须要依次保存相应的项。
#1  7.还原注册表项目
  对于还原注册表项目,我们可以理解为恢复注册表项目的备份设置,或者是还原注册表项目。使用该项功能的前提是以前我们对注册表项目进行了备份。该项功能的使用方法非常简单:首先选择需要还原的项目所在的项显示窗口,单击程序界面“文件”项下拉菜单中的“还原”命令,程序会给出一个对话框,在其中的文件列表窗口中选择需要还原的文件名,之后单击“打开”按钮确定即可。
  在此要提醒的是,对于项目还原操作,将使用备份的注册表项完全替代当前注册表中原始位置的全部配置,而且会将当前注册表中需要还原位置的全部配置删除。
#1  8.注册表的打开与关闭
  当注册表编辑器启动后,程序会自动打开本机的注册表,以供编辑。不过作为Win2000提供的工具,程序提供了关于编辑远程计算机注册表功能,不过我们可以打开的项目限制为HKEY_USERS和HKEY_LOCAL_MACHINE。对于本地注册表窗口的关闭,可从“文件”项下拉菜单中选择“关闭”命令即可。
  对于打开远端计算机的注册表,可以从“文件”项下拉菜单中选择“选择计算机”命令,在其中的计算机列表框中选择需要访问的机器名称,之后单击打开按钮确定即可。
#1  9.设置注册表项的权限
  设置权限是有效的保护注册表项目的重要方法,使用此项功能可以指定能打开该项的用户和组。以下给出具体设置步骤:首先在程序界面窗口中选择需要指定权限的项,单击界面“安全”项下拉菜单,从中选择“权限”命令,在“名称”列表框中选择需要设置权限的用户或组,如果暂时还没有添加,可单击“添加”按钮,在关联的“选择用户、计算机或组”设置界面中选择需要添加的对象。在界面中的“权限”项列表框中设置允许当前选择对象的使用权限,其中包括只读和完全控制(读写)。如果要给子项指派权限,并希望指派给父项的可继承权限能够应用于子项,请选中“允许将来自父系的可继承权限传播给该对象”复选框。此外,如果单击界面中的“高级”按钮,程序会给出针对当前授权注册表项访问控制设置,其中包括了更加严密的授权设置,如是否允许查询数值、设置数值、创建子项、枚举子项、通知、创建链接、删除、写入DAC、写入所有者、读取控制等,根据自己的需要选择即可。