瑞星卡卡安全论坛

首页 » 技术交流区 » 系统软件 » 【推荐】深入剖析Win 2000注册表
□旧日足迹□ - 2005-9-12 14:48:00

可能有的朋友还记得在Windows 3.x中,是用INI文件来保存Windows和Windows程序设置的。而Win 2000中的注册表可以取代绝大多数的INI文件。当你想亲手解决系统出现的某些问题,或你想按照自己的喜好来定制Win 2000系统时,你必须了解Win 2000注册表。

什么是注册表呢?简单说,注册表就是Win 2000和Win 2000程序用来跟踪系统上所有软件和硬件的中心信息库,包括软件和硬件配置的详细情况。

Win 2000注册表的主要特性

1.中心存储地址
注册表的主要特性之一是将以前分散在计算机硬盘上的配置信息汇总。注册表包含的文件不止一个,具体数目与Win 2000的用户数有关。真正的注册表文件不一定都存在于一个目录中,但是注册表仍像是一个中心地址,因为你只要使用Win 2000附带的注册表编辑工具Regedit.exe或Regedt32.exe,就能从一个窗口看到注册表的全部信息。请注意,在没有把握的情况下不要随便改动注册表,否则会出现莫名其妙的问题。

注册表并不一定包含系统的每一可能的配置,这一点在Win 2000 Server中有所体现。Server中有一个Active Directory数据库,它包含了大量的有关网络结构的信息。但是有关网络基本结构的大部分细节仍留在注册表中,实际上Active Direction和注册表之间有些特性有重叠。

2.软件信息
Win 2000是一个高可配置性的操作系统,大部分Win 2000程序也提供令人眼花缭乱的可选设置。注册表的功能之一就是记录系统的软件配置,包括Win 2000本身。注册表会用专为Win 2000/9X/NT编写的32位程序来完成这一任务,16位的程序功能就要逊色一些。
如果世界上每一个程序都完全与Win 2000兼容,那么注册表就会知道PC上每一个程序的全部设置及配置细节,但实际上这还不能实现,注册表记录软件的能力受到如下限制:
Win 2000和9X程序 即使这些32位的程序也不能总是把每一设置都放在注册表中,它们也可能使用注册表不理解的个人INI文件。此外,如果你在网络上使用的是Active Directory,网络管理员在发布应用程序时,可以使其设置处于Active Directory中。
Windows 3.X程序 由于该类程序具备了初级形式的部分注册表功能,因此在安装时能够给Win 2000注册表提供某些信息。比如“签到”,显示本机安装了该程序,并能卸载。
DOS程序 DOS程序不以任何形式进入注册表,因此如果想了解DOS程序的配置,必须看该程序本身的设置。

3.硬件信息
在Win 2000中注册表记录了PC机的全部硬件情况。这主要包括以下几个方面。第一、关于所有32位驱动程序的信息。第二、关于每一硬件正在使用那些计算机资源的信息,如中断、端口、内存地址等。第三、关于PC机上硬件设备可能有多种设置的配置。如监视器可使用1024×768或800×600等不同的分辨率。这些信息存入注册表后用户就无需每次启动机器时都进行设置。第四、记录现在有的硬件曾经拆除或者重装的详细信息。
所有这些内容可以帮助我们理解为什么每一台机器上的注册表内容都是各异的,就像没有两片相同的树叶一样。所以你不能指望将一台机器上的注册表文件挪到另一台机器上能够顺利运行。

Win 2000注册表的主要作用
在安装了Win 2000的PC机上,注册表的作用主要体现在以下几个方面:

1.记录安装选择
注册表在Win 2000安装程序期间就开始运行。当用户指定安装那些Win 2000程序时,安装程序就把这些选择记录在注册表中。

2.设置硬件
Win 2000运行时必须分配给所有硬件设备运行所需要的资源,对它们全部进行设置。包括该设备用来请求PC机关注的中断(Interrupts),与PC机对话的内存区域,连接该设备与Win 2000的驱动等。注册表可以配置这些硬件。

3.设置Win 2000
通过注册表你可以改变许多Win 2000操作系统本身的设置。比如在启动Win 2000时必要的信息:用什么时区;在何处找到Win 2000系统文件;把何种设备驱动程序装入内存,以便Win 2000能与PC硬件对话。

4.运行启动程序
注册表保留有Win 2000启动时要运行的程序清单,它独立于可手工修改的“开始”选单。这个清单通常包括Win 2000每次启动时绝对、肯定要运行的程序,如防火墙等。有些程序只能运行一次,如首次打开新PC的欢迎屏幕,此时注册表用到一次运行的特性。

5.定义Win 2000的显示方式
注册表确定了Win 2000的外观,规定了用户能设置的全部显示选项。如显示多少种颜色、使用何种墙纸、放置什么图标等,这些都可以针对不同用户记录个人设置,称之为用户配置文件(User Profiles)。

6.确定组件方式
Win 2000是Microsoft的“部件对象模块”(Component Object Model,COM)软件设计的最高级的表达形式。而注册表在组件模块中起主要作用,它存储了有关不同对象的基本功能。比如,确定拖放方式的作用。拖放图标可以让你做大量的事情:复制、打印或解压缩、压缩等。注册表就控制着不同类型的数据文件的拖放功能。再比如,双击或单击的作用。像双击TXT文件注册表就会告诉Win 2000运行记事本程序。实际上这些都可以通过修改注册表来重新定义。

7.向管理员报告配置数据
在PC网络上,管理员和检修人员经常要了解计算机配置的详细情况。只要该网络是用户和口令集中式的客户机/服务器类型,那么注册表就可以向远程管理员报告用户的PC机配置。

Win 2000注册表的五大功能

1.纠正Win 2000的错误
通过修改注册表可以纠正Win 2000运行过程中的错误。方法是用Regedit或Regedt32编辑器编辑注册表的相关部分。当然前提是你对注册表有相当的了解。

2.恢复崩溃系统
Win 2000虽然稳定性强,但也不是万无一失。Win 2000崩溃时也会损坏注册表。要恢复崩溃的Win 2000必须恢复注册表,这需要对注册表进行备份。一个最常见的方法是在制作ERD(Emergency Repair Disk)时将注册表副本放C:\Windows\Repair\RegBack中(因为注册表太大而不能存入一张软盘)。当然,这不是一个完美的备份方案。

3.提高运行速度和使用方便性
这些都可以通过修改注册表来得到实现。

4.提高安全性
能够限制普通用户的访问和操作。比如运行Local Group Policy实用程序,来使注册表编辑器失效。

5.控制服务器
注册表可以控制与服务器有关的某些网络设置,为管理服务器而做的许多工作都涉及到注册表的调整。

我们知道Win 2000实际上就是重新命名的NT 5.0。那么Win 2000的注册表与NT 4.0的注册表有什么不同呢?Win 2000主要增加了支持即插即用、集成IE、使用Active Directory数据库、不同的保存和恢复过程以及更完善的安全管理等新特性,相应的在注册表中有所体现。而微软对注册表的概念倾注了大量心血,从Window 3.1到2000,注册表表现得越来越重要。以后虽然Active Directory数据库可能会承担某些与网络有关的任务,但仍不排除注册表概念继续发展的可能。



1
查看完整版本: 【推荐】深入剖析Win 2000注册表