军生吧 关注:59贴子:2,017
  • 3回复贴,共1
注册表及对注册表进行编辑的路径 

介绍了几期的注册表修改技巧,相信大家对注册表的功能有了很深的认识,但是我们在改的时候不一定了解为什么要这样改,这样改的原理是什么?注册表与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系统中被称为“策略”。 



IP属地:山东1楼2006-09-29 23:56回复

      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系统并解决相关的问题很有帮助,在后面我们将详细介绍有关注册表的知识和更多的修改技巧。 


    了解了关于注册表的基本内容之后,我们就可以正式进入我们所要讨论的话题了:对注册表进行编辑修改!一般来说,要想对注册表进行增、删、改,可以有以下三种途径: 

      第一种途径:直接修改(最不安全,但最直接最有效) 

      就是通过注册表编辑器直接的来修改注册表的键值数据项,这样做会避免在注册表中留下垃圾(虽然都很小,但越来越多会拖慢系统速度),但是要求用户有一定的注册表知识,熟悉注册表内部结构而且一定要小心谨慎。 

      注册表编辑器是一个可以让你改变系统注册设定的高级工具WIN98注册表编辑器的常用操作注册表编辑器是一个可以让你改变系统注册设定的高级工具,有经验的Windows用户可以通过编辑注册表改变系统设定。 

      启动注册表编辑器的方法是执行Windows文件夹下的REGEDIT.EXE(在WINNT和Windows 2000中还有REGEDIT32.EXE)。 

     


    IP属地:山东2楼2006-09-29 23:56
    回复
      注册表由来 

      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也可以进入注册表编辑器, 
      后面的内容将介绍注册表编辑器的使用方法,如创建删除主键、子键以及键值等,同时还将给出一些修改注册表的实例。 


      注册表及其备份与恢复 

       Windows9x取代DOS已成为操作系统的当然之选。随着功能的丰富,Windows9x所需管理的细节也远远超过DOS。用户不能仅用修改AUTOEXEC或CONFIG来调整如今Windows的配置与状态。它们需要以一种新的方式来存储、分类和编辑。于是,让无数用户“改”心大动的注册表应运而生。用户通过使用,从而更深入了解并掌握Windows9x。由于在Windows9x中采用了注册表方式,使用户可以按自己的要求对计算机系统的硬件和软件进行灵活配置。(本专题中关于注册表的一些技巧在Windows98下调试通过,有的改动后直接起作用,有的需要重新启动计算机后才生效,虽然是在Windows98下调试,但有很多技巧也适用于Windows95和Windows NT) 
      一、Windows注册表 
      1.什么是注册表? 
      注册表是 Windows 的一个内部数据库,是一个巨大的树状分层的数据库。它容纳了应用程序和计算机系统的全部配置信息、系统和应用程序的初始化信息、应用程序和文档文件的关联关系、硬件设备的说明、状态和属性以及各种状态信息和数据。注册表中存放着各种参数,直接控制着Windows的启动、硬件驱动程序的装载以及一些Windows应用程序的运行,从而在整个Windows系统中起着核心作用。它包括如下一些内容: 
      (1)软、硬件的有关配置和状态信息,注册表中保存有应用程序和资源管理器外壳的初始条件、首选项和卸载数据。 
      


      IP属地:山东5楼2006-09-30 00:01
      回复
        (2)联网计算机的整个系统的设置和各种许可、文件扩展名与应用程序的关联关系,硬件部件的描述、状态和属性。 
        (3)性能记录和其它底层的系统状态信息,以及其它一些数据。 
        如果注册表受到了破坏,轻者使Windows在启动的过程出现异常,重者可能会导致整个系统的完全瘫痪。因此正确地认识、使用,特别是及时备份以及有问题时恢复注册表,对Windows用户来说就显得非常重要了。 
        2.注册表文件:.DAT 
        Windows98将所有注册表文件存入2个文件System.dat和User.dat中。它们是二进制文件,不能用文本编辑器打开查看。它们存于Windows目录下,具有隐含、系统和只读属性。 System.dat包含了计算机特定的配置数据,如安装的硬件和设备驱动程序的有关信息等。User.dat包含了用户特定的数据,如桌面设置,墙纸和窗口颜色设置等。User.dat文件的位置在以某个用户名登录时,其位于C\Windows\profiles\用户名目录下,系统同时在C\Windows目录下保留了一个缺省的User.dat文件,以备新用户使用。 
        说明:System.da0和User.da0这两个文件属于Windows95,是注册表的备份文件,它们在系统每次成功启动后创建。在Windows98中,注册表检查器将备份文件做成CAB文件。 
        二、注册表编辑器——Registry Editor 
        1.打开注册表编辑器 
        注册表的打开方式很简单,单击Windows“开始”按钮,找到“运行”,鼠标左键单击。在弹出的运行对话框中填入 regedit,按“确定”按钮即可。 
        我们可以看到,在注册表中,所有的数据都是通过一种树状结构以键和子键的方式组织起来,十分类似于目录结构。每个键都包含了一组特定的信息,每个键的键名都是和它所包含的信息相关的。 
        2.注册表编辑器的基本操作 
        注册表编辑器有一些基本操作命令,在这里以当前使用的Desktop为例来说明注册表编辑器的基本操作。 
        (1) 打开HKEY_CURRENT_USER\Control Panel\desktop\WindowMetrics,在右边的窗口中是一些名称和数据。 
        (2)用鼠标右键单击编辑器右边的窗格,会弹出一个快捷菜单,可以选择它来创建一个主键、一个字符串、一个二进制值或者一个DWORD值。 
        (3)右击编辑器左边窗格的desktop关键字,会弹出另一个快捷菜单,在这里,你可以创建一个新的主键、串值、二进制值或者DWORD值,还可以进行查找、删除和重命名等操作。 
        (4)双击编辑器右边的窗格中的关键字名,将会弹出一个编辑窗口,在那儿可以调整常量的值,或者删除该常量,以及进行重命名等,比如双击字符串“ScreenSaveActive”,弹出如图2的对话框。 
        三、注册表的备份与恢复 
        在安装新的应用程序或添加新硬件时都可能搞乱系统的注册表,从而引发不测,所以应该定期地备份user.dat和system.dat文件(编者:在进行注册表修改之前,强烈建议你先备份注册表,以防修改过程误操作引起系统崩溃)。 
        在Windows98中的Windows目录下,仍有System.dat和User.dat两个文件用来存放系统注册表信息。下面笔者就根据自己的使用体会来谈谈在Windows98中对注册表进行备份及恢复的几种常用方法。 
        1.直接进行备份与恢复 
        这是一种很原始的方法,即直接将所需之System.dat及User.dat两个文件拷贝存放在硬盘某个指定目录下或直接拷到软盘上作为备份,恢复时再将该备份替换覆盖回原处即可,当然在备份及恢复时都需对这两个文件的只读及隐藏属性进行相应的修改操作,让隐藏文件显示出来。 
        说明:如因注册表问题而导致系统瘫痪,开机后无法进入Windows系统时,可用应急启动盘进入Windows98自带的DOS界面后,用常规的DOS操作来将存在硬盘或软盘中的备份覆盖回原处,恢复备份的注册表数据。 
        2.注册表编辑器的导出与引入 
        运行Regedit.exe打开Windows98注册表后,利用“注册表”的“导出”及“引入”功能也可以用来备份或恢复注册表信息。具体方法为:在“注册表编辑器”窗口中点击左上角“注册表”下拉菜单,点击“导出注册表文件……”项,在出现的“导出注表文件”对话框中,键入欲备份注册表的文件名及其保存位置,再按“保存”按钮即可。需恢复注册表时,用同样的方法打开注册表编辑器,打开“注册表”下拉菜单后点击“引入注册表文件……”项,在出现的对话框中选中所需恢复的备份文件,再按“打开”按钮即可将该注表备份恢复回Windows系统了。 
        说明:该方法主要适合于Windows系统还未瘫痪或可以通过安全模式启动Windows98系统时恢复注册表之用,如因注册表问题而无法进入Windows系统时,则该法就无能为力了。 
        3.系统的注册表自动备份 
        在Windows98中,取消了Windows 95中每次开机时自动以System.da0和User.da0为名的两个文件来备份注册表数据的功能,而新增加了一个以.Cab(Cabinet)作后缀的压缩文件作为注册表备份的功能,具体使用如下: 
        该备份过程是由Windows98系统自动完成的。在用户当天第一次开机时,Windows98将会自动将系统中原有的注表信息,包括System.dat、User.dat、System.ini和Win.ini这四个文件都压缩成Cab形式的文件,在Windows\Sysbacup 目录下会有诸如rb000.cab和rb001.cab之类的压缩文件,这几个就是最近的五个系统备份(Windows\Sysbckup是隐藏目录,要查看须让隐藏的文件和目录显示出来)。系统自动保存最近5次开机的注册表数据。 
        一般说来,当Windows98安装好后,会在启动时自动运行Scanregw.exe/autorun,目的是每天备份一次注册表。你可以在开始选单上选择运行“Msconfig”,运行Microsoft的系统配置程序,点“启动”选项,查看该命令是否运行。倘若该命令没有被运行,则运行注册表编辑器“Regedit”,在“HKEY_LOCAL_MACHINE\Soft ware\Microsoft\Windows\CurrentVersion\Run”主键下新建一个字符串值,键值为“C\Windows\scanregw.exe/autorun”(这里假设Windows98安装目录为C\Windows)。这样,Windows98就会自动备份最近5次的注册表,以rb00.cab形式存放在C\Windows\Sysbckup\路径下。


        IP属地:山东6楼2006-09-30 00:01
        回复