{Windows XP}了解注册表,深入系统
介绍了几期的注册表修改技巧,相信大家对注册表的功能有了很深的认识,但是我们在改的时候不一定了解为什么要这样改,这样改的原理是什么?注册表与Windows 98系统的关系是什么?接下来的几期我们将带你了解注册表的详细情况,使你深入到系统内部。
首先我们来看看注册表与Windows 98文件系统的关系。
Windows 98的注册表Registry由以下的六个文件组成:
1.系统配置的注册表文件System.dat
在Windows 9x的系统目录c:\windows中有一个隐含、系统、只读文件System.dat,它是Windows 98注册表的一部分,该文件具有如下作用:
1)描述单一的PC配置。
2) 描述安装在单一PC上的消息。
3)安装即插即用类型的设备硬件配置,如设备的I/O地址、IRQ级和DMA通道等等的情况。这个文件在Windows 98的网络运行状态时,保存在本地的工作站或本地PC机系统中。在Windows 98的安装期间,Setup将首先检查你的计算机上已经安装了的硬件设备,然后在System.dat中建立适当的配置项。若从现有的Windows 3.x中升级安装Windows 98,则Setup将把现有的System.ini 、Reg.dat文件中的部分设置项拷贝到System.dat中,以保持系统的设置。
我们经常使用“控制面板”的“系统”图标来修改系统的硬件设备和配置情况,这个时候我们进行的操作都是从System.dat中读取的系统属性设置。这个文件的作用很类似于Windows 3.x中的System.ini文件。
2.系统配置的注册表备份文件System.da0
Windows 98的注册表的一个非常重要的特点就是可靠性强,稳定不易损坏。这就需要靠注册表的备份文件system.da0。
系统配置注册表System.dat的备份文件为System.da0,该文件在System.dat文件遭到意外破坏时,将由系统在启动的时候自动拷贝为System.dat。这对于并不稳定的Windows 98系统来说是非常重要的,至少给系统提供了一点重要的稳定机制。
3.用户平台配置的注册表文件User.dat
在Windows 98的系统目录c:\windows中有一个隐含、系统、只读文件User.dat,它也是Windows 98的注册表的重要组成部分,这个文件具有这样的作用:
1)它定义用户优先权,如用户平台设置,运行级等等。
2)特定于某一个用户的应用程序的安装信息,应用程序的使用信息等等。如果你是使用局域网的话,当你在Windows 98中使用网络时,Us dat必须放在网络服务器上。对于单机来说,配置了网络属性的是保存在本机的系统目录下的。
在你第一次输入用户名和密码时,Windows 98程序将把这些信息存储在User.dat中,同时你的Windows 98的系列号也存储在USER.DAT中。如果用户在“控制面板”的“密码”图标中选择了“用户可自定义首选项及桌面设置登录时,Windows自动启用个人设置”这个选项后,Windows 98系统将会为每个用户创建他自己的User.Dat,并且把它保存为C:\Windows\Profiles\用户名\User.dat。在用户每次登录后,他自己的User.dat就会被调入到系统中,同时启动自己相应的程序信息。该文件的作为类似于Windows 3.x 系统中的Win.ini文件。
4.用户平台配置的注册表备份文件User.da0
用户平台配置的注册表文件User.dat也有一个备份文件User.da0。当User.dat遭到意外破坏时,将由系统将User.da0拷贝为User.dat,从而使User.dat得到了恢复。
5.网络管理注册表文件Config.pol
Config.pol文件是一个隐含、系统、只读文件,它主要用于Windows 98的网络用户的管理方面的策略。
如果你在Windows 98系统里安装了“系统策略编辑器”后,则用户可以使用Config.pol文件中的限制来决定系统用户的操作权限如执行程序、修改注册表等等,这也就是说,系统根据Config.pol文件中的设置对网络用户的操作作一些限制,这种限制在Windows 98系统中被称为“策略”。
6.网络管理注册表备份文件Config.po0
Config.pol也有一个备份文件Config.po0,它是一个隐含、系统、只读文件。它存放在网络服务器中。重要是在config.pol损坏时起到恢复作用。
看了注册表的文件组成,我们再来看看Windows 98系统注册表Registry与INI文件之间的关系
注册表Registry与Windows 98中的INI文件有许多相似之处。注册表中的键或子键类似于INI文件中的小节,一个键值项对应于INI文件中小节里的一条设置项。
但是我们还是很容易发现他们之间的区别的:首先Registry可以包括子键,而INI文件不支持小节的嵌套;其次Registry中的键值项还可以包含可执行代码,而在INI文件中设置项只是简单的字串;第三是在同一台计算机上有多个用户,Registry可以存储每个用户的特性,而INI文件中却不可能做到。
如果你的计算机系统是从Windows 3.x上升级到Windows 98的,则安装程序会从System.ini和Win.ini文件文件中选择一些系统设置信息放入到注册表中。不过,为了与以前的Windows版本上的老式16位应用程序保持兼容,INI文件中的有些设置项不能迁移到Windows 98的注册表中。
1).注册表中有关Win.ini的信息
有关Win.ini的信息的所有的子键都处于注册表的HKEY_CURRENT_USER根键中。在HKEY_CURRENT_USER子键分支下能看到[desktop] GridGranularity Control Panel\desktop ;Pattern Control Panel\desktop ;
TileWallPaper Control Panel\desktop ;
[windows] ScreenSaveActive Control Panel\desktop ;ScreenSaveTimeOut Control Panel\desktop
[Sounds] Sound Event Name AppEvents\Schemes\Apps\.Default\Sound Event Name\.current
[Hearts] Name Software\Microsoft\Windows\CurrentVersion\Applets\Hearts 等在Win.ini文件中的信息
2).注册表中有关System.ini的信息
有关System.ini的信息的子键都处于注册表的HKEY_LOCAL_MACHINE根键中。根据机器的网络配置,有些系统可能不会出现某些子键。我们打开HKEY_LOCAL_MACHINE目录分支可以看到这些相关的信息。如
[Network]
Comment System\CurrentControlSet\Services\VxD\VNETUP
ComputerName System\CurrentControlSet\Control\ComputerName\ComputerName
EnableSharing
LMAnnounce System\CurrentControlSet\Services\VxD\VNETUP
LogonDomain
Logon Validated
MaintainServerList System\CurrentControlSet\Control\ComputerName\ComputerName
Reconnect
Reshare
Username Network\Logon
Workgroup System\CurrentControlSet\Control\ComputerName\ComputerName
[386Enh] Network
Transport Software\Microsoft\Windows\CurrentVersion\Network\Real Mode Net
在这里只是简单的介绍了注册表与Windows 98文件系统和INI文件之间的一些关系,这对于我们深入认识Windows 98系统并解决相关的问题很有帮助,在后面我们将详细介绍有关注册表的知识和更多的修改技巧。