切换到宽版
  • 2242阅读
  • 0回复

注册表的由来 [复制链接]

上一主题 下一主题
离线樱子
 

只看楼主 倒序阅读 0 发表于: 2010-06-19
— 本帖被 Manboo 从 电脑名词、术语解析 移动到本区(2010-10-14) —
 p align="left"> PC机及其操作系统的一个特点就是允许用户按照自己的要求对计算机系统的硬件和软件进行各种各样的配置。早期的图形操作系统,如Win3.x中,对软硬件工作环境的配置是通过对扩展名为.ini的文件进行修改来完成的,但INI文件管理起来很不方便,因为每种设备或应用程序都得有自己的INI文件,并且在网络上难以实现远程访问。

  为了克服上述这些问题,在Windows 95及其后继版本中,采用了一种叫做“注册表”的数据库来统一进行管理,将各种信息资源集中起来并存储各种配置信息。按照这一原则,Windows各版本中都采用了将应用程序和计算机系统全部配置信息容纳在一起的注册表,用来管理应用程序和文件的关联、硬件设备说明、状态属性以及各种状态信息和数据等。

  与INI文件不同的是:

  1.注册表采用了二进制形式登录数据;

  2.注册表支持子键,各级子关键字都有自己的“键值”;

  3.注册表中的键值项可以包含可执行代码,而不是简单的字串;

  4.在同一台计算机上,注册表可以存储多个用户的特性。

  注册表的特点有:

  1.注册表允许对硬件、系统参数、应用程序和设备驱动程序进行跟踪配置,这使得修改某些设置后不用重新启动成为可能。

  2.注册表中登录的硬件部分数据可以支持高版本Windows的即插即用特性。当Windows检测到机器上的新设备时,就把有关数据保存到注册表中,另外,还可以避免新设备与原有设备之间的资源冲突。

  3.管理人员和用户通过注册表可以在网络上检查系统的配置和设置,使得远程管理得以实现。

  我们在前面已经详细介绍了注册表的由来与基本结构。发现注册表比较复杂,但又安排得非常有条理,能有效地提高工作效率,为系统的维护提供了必要条件。由于注册表是一个二进制的配置数据库文件(Windows的命根子),因而,用户无法直接存取注册表。为了让高级用户能够编辑注册表,Windows2000提供了注册表编辑器“c”和“Regedt32”。对这种只使用Windows提供的注册表编辑器进行编辑的操作。

  编辑器在安装Windows时已经被安装到硬盘中了,但是并未在“附件”程序组中建有快捷方式。用户如果需要使用注册表编辑器,可以在“运行”对话框内输入Regedt32或Regedit即可打开注册表编辑器,或者在“命令提示符”中执行Regedt32.exe也可以进入注册表编辑器,后面的内容将介绍注册表编辑器的使用方法,如创建删除主键、子键以及键值等,同时还将给出一些修改注册表的实例。

  win2000注册表

  p> 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启动和运行所必须的全部配置,错误的设置将会导致应用程序无法运行、系统出错,直至系统崩溃或无法启动。如果需要对注册表进行编辑,务必事先进行注册表项目备份!

  Win2000中的注册表编辑器

  在Win2000中,系统提供了两个注册表编辑工具,一个是从Win9x延续下来的,一个是新版本操作系统提供的。在此我们要介绍的是后者。

  1.程序的启动

  单击系统开始按钮,在关联菜单中选择“运行”命令,激活相关界面。在其中的文本框中输入“regedt32”,并击回车键确定,即可启动程序,其界面形式如图1所示。

  2.向注册表中添加新的项或子项

  如果需要将一些系统运行设置添加到系统注册表中,而这些信息又不是以*.reg格式提供的,此时只能使用注册表编辑器完成,具体步骤如下:

  启动程序,在程序左边的树形列表窗口中选择将在其下添加新项的项或子项。

  在“项名称”文本框中输入需要添加的新项名称,对于指定类别,可根据自己的需要设置,当然如果不添加也可以。最后单击确定按钮,返回程序界面即可。

  如果需要在HKEY_USERS或HKEY_LOCAL_MACHINE主项中添加新的内容,方法有所不同,此时“编辑”菜单中的“添加项”命令是不允许使用的。正确的添加方法是:单击程序界面菜单条“文件”项下拉菜单中的“加载配置单元”命令,程序会给出一个列表框,在其中选择需要加载的对象,之后单击“打开”按钮,程序会给出“加载配置单元”对话框,在其中输入新建项目名称,之后单击确定按钮即可。在此需要说明的是,加载配置单元主要用于在不同的机器中传递注册表配置。
  
  3.给注册表的值项赋值

  所谓值项,就是注册表中的含数据字符串的子项,这个设置以字符串方式体现,常见的设置取值包括二进制数值和字符串明码以及DWORD(双字节)值方式。给值项赋值的具体步骤是:首先在注册表编辑器界面左边窗口中选择需要赋值的项或子项,从程序界面菜单条“编辑”项下拉菜单中选择“添加数值”命令,此时会出现如图3所示界面。在其中的“数值名称”文本框中输入需要创建的值项(子项)名,在“数据类型”下拉文本框中选择赋值类型,其中各列表项的含义为:

  ●REG_BINARY:二进制值;
  ●REG_DWORD:DWORD值;
  ●REG_EXPAND_SZ:可扩展字符串;
  ●REG_MULTI_SZ:多重字符串;
  ●REG_SZ:数据字符串。

  根据自己的需要选择,之后,单击确定按钮。注意,选择的赋值类型不同,程序会给出关联的设置界面,在其中设置具体取值,之后进行确定就可以了。

  如果需要修改或编辑值项的赋值,可使用鼠标双击程序界面右边窗口中的赋值列表项,程序会给出相应的赋值编辑器,在其中进行编辑或修改即可,非常简单。

  4.以关键字方式查找

  由于注册表中包括的项目非常多,当需要从中定位自己需要的项或子项时,使用查找功能是非常必要的。该项功能的具体用法如下:首先在程序界面中选择需要扫描的项或子项所在窗口,单击界面菜单条“察看”项下拉菜单中的“搜索项”命令。在“查找内容”文本框中输入需要查找的内容关键字,并选择相应的扫描控制方式,之后,单击“查找下一个”按钮确定即可。

  5.删除注册表中无用的子项或值项

  虽然现在的应用程序都设计有自动卸载功能,但是多数程序并不能完全将自己在注册表中添加的项目删除,这也会导致注册表日益增大,时间长了会导致系统运行变慢等不良现象发生。如果你大致了解注册表的组成,可以将这些无用的设置从注册表中删除,当然这项操作具有一定的风险,使用前应该备份注册表数据文件。对于删除注册表中的项目,非常简单:首先在程序界面中找到需要删除项目所在的主项窗口,然后定位需要删除的值项,一般对于软件注册项都包括在HKEY_CURRENT_USER项下的Software子项中。单击程序界面菜单条“编辑”项下拉菜单中的“删除”命令或者是直接按下“Delete”键,程序会给出删除确认对话框,单击“Yes”按钮确认即可。

  此外,对于配置单元项,是不能直接删除的,须要按照如下方法操作:选择需要删除的配置单元列表项,之后从程序界面“文件”下拉菜单中选择“卸载配置单元”命令。

  6.保存注册表项目

  对于保存注册表项目,可按以下步骤操作:首先在程序界面中选择需要保存的注册表项目对象,之后从界面“文件”下拉菜单中选择“保存项”命令,程序会给出相应的对话框,在其中设置保存文件的文件名、保存路径,对于文件类型,应设置为“所有文件”,之后,单击界面中的“保存”按钮即可。由于Win2000的注册表编辑器根据不同的项给出了单独的窗口,所以,对于完整的保存注册表,须要依次保存相应的项。

  7.还原注册表项目

  对于还原注册表项目,我们可以理解为恢复注册表项目的备份设置,或者是还原注册表项目。使用该项功能的前提是以前我们对注册表项目进行了备份。该项功能的使用方法非常简单:首先选择需要还原的项目所在的项显示窗口,单击程序界面“文件”项下拉菜单中的“还原”命令,程序会给出一个对话框,在其中的文件列表窗口中选择需要还原的文件名,之后单击“打开”按钮确定即可。

  在此要提醒的是,对于项目还原操作,将使用备份的注册表项完全替代当前注册表中原始位置的全部配置,而且会将当前注册表中需要还原位置的全部配置删除。

  8.注册表的打开与关闭

  当注册表编辑器启动后,程序会自动打开本机的注册表,以供编辑。不过作为Win2000提供的工具,程序提供了关于编辑远程计算机注册表功能,不过我们可以打开的项目限制为HKEY_USERS和HKEY_LOCAL_MACHINE。对于本地注册表窗口的关闭,可从“文件”项下拉菜单中选择“关闭”命令即可。

  对于打开远端计算机的注册表,可以从“文件”项下拉菜单中选择“选择计算机”命令,在其中的计算机列表框中选择需要访问的机器名称,之后单击打开按钮确定即可。

  9.设置注册表项的权限

  设置权限是有效的保护注册表项目的重要方法,使用此项功能可以指定能打开该项的用户和组。以下给出具体设置步骤:首先在程序界面窗口中选择需要指定权限的项,单击界面“安全”项下拉菜单,从中选择“权限”命令,在“名称”列表框中选择需要设置权限的用户或组,如果暂时还没有添加,可单击“添加”按钮,在关联的“选择用户、计算机或组”设置界面中选择需要添加的对象。在界面中的“权限”项列表框中设置允许当前选择对象的使用权限,其中包括只读和完全控制(读写)。如果要给子项指派权限,并希望指派给父项的可继承权限能够应用于子项,请选中“允许将来自父系的可继承权限传播给该对象”复选框。此外,如果单击界面中的“高级”按钮,程序会给出针对当前授权注册表项访问控制设置,其中包括了更加严密的授权设置,如是否允许查询数值、设置数值、创建子项、枚举子项、通知、创建链接、删除、写入DAC、写入所有者、读取控制等,根据自己的需要选择即可。 

当今社会电脑、网络已经与人们的生活密不可分,电脑基础技术专区是电脑普通用户、初学者的乐园,在快乐中学习,在学习中不断提高。
快速回复
限100 字节
告贴,不要在非指定版块发表水贴,谢谢合作。
 
上一个 下一个