扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在本页阅读全文(共2页)
1.注册表Reigstry的层次结构
注册表Reigstry的层次结构类似于硬盘中的目录树,我们可参见图1.2。
┌──────┐
│ 注册表 │
│ Registry │
└──┬───┘
│
│ ┌────┐
├─┤ 根键 │
│ └─┬──┘
│ ┌────┐
├──┤ 子键 │
│ └─┬──┘
│ ┌────┐
├──┤ 子键 │
│ └─┬──┘
│ ┌───┐
├─┤键值项│
│ └───┘
图1.2
表1.1是对图1.2中的Registry层次结构的解释。
表1.1 图1.2中的Registry层次结构的解释
层次 |
说 明 |
根键 |
根键类似于硬盘上的根目录。 Registry有四个预定义的根键: 3、HKEY_CURRENT_USER 4、HKEY_CLASSES_ROOT |
键与子键 |
键和子键类似于文件管理器中看到的目录结构,在键下面是子键,就象目录可以包含子目录一样 |
键值项 |
键值项类似硬盘上树型目录的末端文件,键和子键可以包括一个或多个键值项。键值项由键值名、数据类型和键值三部分组成,其格式为:“键值名:数据类型:键值”。 |
键值类型 |
Registry中有如下三种键值类型:
二进制值:只允许一个值,是16进制数字串,每对作为一个字节值解释。 |
表1.1
六大根键的作用
在注册表中,所有的数据都是通过一种树状结构以键和子键的方式组织起来,十分类似于目录结构。每个键都包含了一组特定的信息,每个键的键名都是和它所包含的信息相关的。如果这个键包含子键,则在注册表编辑器窗口中代表这个键的文件夹的左边将有“+”符号,以表示在这个文件夹中有更多的内容。如果这个文件夹被用户打开了,那么这个“+”就会变成“-”。
1、HKEY_USERS该根键保存了存放在本地计算机口令列表中的用户标识和密码列表。每个用户的预配置信息都存储在HKEY_USERS根键中。HKEY_USERS是远程计算机中访问的根键之一。
2、HKEY_CURRENT_USER该根键包含本地工作站中存放的当前登录的用户信息,包括用户登录用户名和暂存的密码(注:此密码在输入时是隐藏的)。用户登录Windows 98时,其信息从HKEY_USERS中相应的项拷贝到HKEY_CURRENT_USER中。
3、HKEY_CURRENT_CONFIG该根键存放着定义当前用户桌面配置(如显示器等)的数据,最后使用的文档列表(MRU)和其他有关当前用户的Windows 98中文版的安装的信息。
4、HKEY_CLASSES_ROOT包含注册的所有ole信息和文档类型,是从 hkey_local_machine\software\classes复制的。根据在Windows 98中文版中安装的应用程序的扩展名,该根键指明其文件类型的名称 。
5、HKEY_LOCAL_MACHINE该根键存放本地计算机硬件数据,此根键下的子关键字包括在SYSTEM。DAT中,用来提供HKEY_LOCAL_MACHINE所需的信息,或者在远程计算机中可访问的一组键中。该根键中的许多子键与System。ini文件中设置项类似。
6、KEY_DYN_DATA该根键存放了系统在运行时动态数据,此数据在每次显示时都是变化的,因此,此根键下的信息没有放在注册表中
2.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的注册表中。有关Win.ini、System.ini文件的结构与设置项信息详见附录A。
1.注册表中Win.ini信息
表1.2列出了Windows 98在升级安装过程中,从Win.ini文件中移出的部分设置项,以及在注册表中的位置。所有的子键都处于注册表的HKEY_CURRENT_USER根键中。
表1.2 注册表中Win.ini信息
小节 |
设置项 |
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 |
2.注册表中的System.ini信息
表1.3列出了Windows 98在升级安装过程中从System.ini文件中移出的设置项,以及在注册表中的位置,这些子键都处于注册表的HKEY_LOCAL_MACHINE根键中。根据机器的网络配置,有些系统可能不会出现某些子键。
表1.3 注册表中的System.ini信息
小节 |
设置项 |
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 |
1.2 注册表Registry的组成
我们知道,在Windows 3.x中,提供了一个注册数据库Reg.dat,它是一个一般二进制文件,它可用Regedit.exe程序来维护。Reg.dat是一个十分软弱的数据文件,在Windows 3.x中增加或删除O LE应用程序时,经常受到不同程度的破坏。
Windows 98改变了Windows 3.x的做法,采用了一种强大的注册表Registry,它要比Reg.dat更为可靠。
3.注册表的文件组成
注册表Registry由五个文件组成的。介绍如下。
1.系统配置注册表文件System.dat
在Windows 98的系统目录中有一个隐含、系统、只读文件System.dat,它是Windows 98注册表的一部分,该文件具有如下作用:
● 描述单一的PC配置。
● 描述安装在一单独的PC上的消息。
● 安装即插即用类型的设备硬件配置,如设备的I/O地址、IRQ级和DM A通道等。
该文件的作用有点类似Windows 3.x中的System.ini文件。
该文件在Windows 98的网络运行状态时,保存在本地的工作站或本地PC机中。
在Windows 98安装期间,Setup将检查您的计算机上已安装的硬件,然后在System.dat中建立适当的配置项。若从现有的Windows 3.x中安装Windows 98,则Setup将把现有的System.ini、Reg.dat文件中的部分设置项拷贝到System.dat中,详见1.1.3节。
在您使用“控制面板”的“系统”图标查看硬件配置时,其窗口中所显示的选项都是从System.dat中读取的,如图1.3所示。
图1.3
2.系统配置注册表备份文件System.da0
Windows 98的注册表的一个主要特点就是可靠性强,不易损坏。这个特点靠的就是注册表有备份文件。
系统配置注册表System.dat的备份文件为System.da0,该文件在System.dat文件遭到意外破坏时,将由系统自动拷贝为System.dat。
3.用户平台配置注册表文件User.dat
在Windows 98的系统目录中有一个隐含、系统、只读文件User.dat,它也是Windows 98的注册表的一部分,该文件具有如下作用:
● 它定义用户优先权,如用户平台配置等。
● 特定于某一个用户的应用程序的安装信息。
该文件的作为类似于Windows 3.xWin.ini文件。
当您在Windows 98中使用网络时,User.dat必须放在网络服务器上。
在您第一次输入用户标识和密码时,安装程序将把这些信息存储在User.dat中。您的Windows 98的系列号也存储在USER.DAT中。
如果用户在“控制面板”的“密码”图标中选择了“用户可自定义首选项及桌面设置登录时,Windows自动启用个人设置”这个选项后(参见图1.4所示),系统就会为每个用户创建他自己的User.Dat,并且把它保存为C:\Windows\Profiles\用户名\User.dat。用户每次登录后,他自给的User.dat会被调入到系统中。
图1.4
4.用户平台配置注册表备份文件User.da0
用户平台配置注册表文件User.dat也有一个备份文件User.da0。当User.dat遭到意外破坏时,将由系统将User.da0拷贝为User.dat,从而使User.dat得到了恢复。
5.网络管理注册表文件Config.pol
若您在Windows 98安装了“系统策略编辑器”后,则用户可以使用Config.pol文件中的限制来决定系统如修改注册表,也就是说,系统根据Config.pol中的设置对网络用户的操作作一些限制,这种限制在Windows 98被称为“策略”。Config.pol文件也是一个隐含、系统、只读文件,它主要用于Windows 98的网络用户的管理方面的策略。
6.网络管理注册表备份文件Config.po0
同System.dat、User.dat有备份文件一样,Config.pol也有一个备份文件Config.po0,它是一个隐含、系统、只读文件。它存放在网络服务器中。
1.2.2 注册表中的根键
使用注册表编辑器可以观察注册表中的根键,如图1.5所示。
图1.5
注意:在“运行”对话框中输入RegEdit,然后单击“确定”按钮,则可以运行注册表编辑器,详见第2章介绍。
图1.5显示了Windows 98中文版的注册表Registry?(System.dat、User.dat、Config.pol)的数据组织结构。
图1.5左窗格显示的是注册表的根键,这样的根键共六个。?这些根键都是大写的,并以HKEY_为前缀,?这种命令约定是以Win32 API的Registry函数的关键字的符号变量为基础的。
虽然在注册表中,六个根键看上去处于一种并列的地位,彼此毫无关系。但事实上,HKEY_CLASSES_ROOT和HKEY_CURRENT_CONFIG中存放的信息都是HKEY_LOCAL_MACHINE中存放的信息的一部分,而HKEY_CURRENT_USER中存放的信息只是HKEY_USERS存放的信息的一部分。
HKEY_LOCAL_MACHINE包括HKEY_CLASSES_ROOT和HKEY_CURRENT_USER中所有的信息。在每次系统启动后,系统就映射出HKEY_CURRENT_USER中的信息,使得用户可以查看和编辑其中的信息。
实际上,HKEY_LOCAL_MACHINE\SOFTWARE\Classes就是HKEY_CLASSES_ROOT,为了用户便于查看和编辑,系统专门把它作为一个根键。同理,HKEY_CURRENT_CONFIG\SYSTEM\Current Control就是HKEY_LOCAL_MACHINE\SYSTEM\Current Control。
HKEY_USERS中保存了默认用户和当前登录用户的用户信息。HKEY_CURRENT_USER中保存了当前登录用户的用户信息。
HKEY_DYN_DATA保存了系统运行时的动态数据,它反映出系统的当前状态,在每次运行时都是不一样的,即便是在同一台机器上。
根据上面的分析,注册表中的信息可以分为HKEY_LOCAL_MACHINE和HKEY_USERS两大类,这两大类的详细介绍参见第3章。
1.2.3 注册表中的键与子键
在注册表中(参见图1.5所示),所有的数据都是通过一种树状结构以键和子键的方式组织起来,十分类似于目录结构。每个键都包含了一组特定的信息,每个键的键名都是 和它所的信息相关的。如果这个键包含子键,则在注册表编辑器窗口中代表这个键的文件夹的左边将有“+”符号,以表示在这个文件夹中有更多的内容。如果这个文件夹被用户打开了,那么这个“+”就会变成“-”,如图1.6所示。
图1.6
1.HKEY_USERS
该根键保存了存放在本地计算机口令列表中的用户标识和密码列表。?每个用户的预配置信息都存储在HKEY_USERS根键中。?HKEY_USERS是远程计算机中访问的根键之一。图1.7为HKEY_USER子关键字连接情况。
图1.7
2.HKEY_CURRENT_USER
该根键包含本地工作站中存放的当前登录的用户信息,包括用户登录用户名和暂存的密码(注:此密码在输入时是隐藏的)。用户登录Windows 98时,其信息从HKEY_USERS中相应的项拷贝到HKEY_CURRENT_USER中。图1.8为HKEY_CURRENT_USER根键下各个键之间连接的情况。
图1.8
3.HKEY_CURRENT_CONFIG
该根键存放着定义当前用户桌面配置(如显示器等)的数据,以及最后使用的文档列表(MRU),和其他有关当前用户的Windows 98中文版的安装的信息.
图1.9为HKEY_CURRENT_CONFIG子关键字之间的连接情况。
图1.9
4.HKEY_CLASSES_ROOT
根据在Windows 98中文版中安装的应用程序的扩展名,该根键指明其文件类型的名称。
在第一次安装Windows 98中文版时,RTF(Rich Text Format)文件与写字板(WordPad)?联系起来,但在以后安装了中文Word 6.0后,?双击一个RTF文件时,将自动激活Word。存放在SYSTEM.DAT中的HKEY_CLASSES_ROOT,???将替代WIN.INI文件中的[Extensions]?小节中的设置项,它把应用程序与文件扩展名联系起来,它也替代了Windows 3.x中的Reg.dat文件中的相似的设置项。?图1.10显示了HKEY_CLASSES_ROOT根键中包括的文件扩展名的情况。
图1.10
5.HKEY_LOCAL_MACHINE
该根键存放本地计算机硬件数据,此根键下的子关键字包括在SYSTEM.DAT中,用来提供HKEY_LOCAL_MACHINE所需的信息,或者在远程计算机中可访问的一组键中。
该根键中的许多子键与System.ini文件中设置项类似。
图1.11显示了HKEY_LOCAL_MACHINE根键下的各个子键之间的情况。
图1.11
6.HKEY_DYN_DATA
该根键存放了系统在运行时动态数据,此数据在每次显示时都是变化的,因此,此根键下的信息没有放在注册表中。图1.12显示了HKEY_DYN_DATA根键下的各个子键的情况。
1.2.4 注册表中的键值项数据
注册表通过键和子键来管理各种信息。但是,注册表中的所有信息是以各种形式的键值项数据保存下来。在注册表编辑器右窗格中,保存的都是键值项数据。这些键值项数据可分为如下三种类型:
1.字符串值
在注册表中,字符串值一般用来表示文件的描述、硬件的标识等。通常它由字母和数字组成,最大长度不能超过255个字符。在图1.13所示中,“D:\pwin98\trident”即为键值名“a”的键值,它是一种字符串值类型的。同样地,“ba”也为键值名“MRUList”的键值。通过键值名、键值就可以组成一种键值项数据,这就相当于Win.ini、Ssytem.ini文件中小节下的设置行。其实,使用注册表编辑器将这些键值项数据导出后,其形式与INI文件中的设置行完全相同了。详见第3章。
图1.13
2.二进制值
在注册表中,二进制值是没有长度限制的,可以是任意个字节长。在注册表编辑器中,二进制以十六进制的方式显示出来,如图1.14所示。
图1.14
在图1.14中,键值名Wizard的键值“80 00 00 00”就是一个二进制
注意:在如图1.15所示的“编辑二进制值”对话框时,在编辑框的左边输入十六进制数时,其右边将会显示相应的ASCII码。
图1.15
3.DWORD值
DWORD值是一个32位(4个字节,即双字)长度的数值。在注册表编辑器中,您将
图1.16
发现系统会以十六进制的方式显示DWORD值,如图1.16所示。
注意:在编辑DWORD数值时,可以选择用十进制还是16进制的方式进行输入,如图1.17所示。
图1.17
1.3 注册表的双重入口
在注册表中经常出现双重入口(分支),例如,有一些在HKEY_CLASSES_ROOT中的键同样会在HKEY_LOCAL_MACHINE中出现,如图1.18所示。
图1.18
如果这些相同的分支出现在两个不同的根键中,那么,哪个根键有效呢?
注册表的子键都有严格的组织。如果相同的信息出现在超过一个的子键中,如果您只修改了一个子键,那么该修改是否作用于系统依赖于该子键的等级。一般来说,系统信息优先于用户等级。例如,一个设置项同时出现在HKEY_LOCAL_MACHINE和HKEY_USER子键中,通常由HKEY_LOCAL_MACHINE中的数据起作用。要注意的是,这种情况只发生在您直接编辑注册表时。如果您从“控制面板”中更改系统配置,则所有出现该设置项的地方均会发生相应的改变。
例如,您可以通过注册表设置文件关联,即将一个带有特殊后缀的文件连接到一个应用程序上。在注册表中,有四个子键都保存了文件管理的数据,它们分别是:HKEY_CLASSES_ROOT、HKEY_CURRENT_USER、HKEY_LOCAL_MACHINE、HKEY_USER。在缺省情况下,所有后缀为1ST的文件都被连接到记事本程序(Notepad)上。如果您在Windows资源管理器双击该后缀的文件,则系统将激活记事本,同时将此文件调入编辑。但是您也可此文件关联从Notepad改为LotusAmi Pro(这也是一个字处理程序),则您在双击后缀为1ST的文件时,将激活LotusAmi Pro程序,同时编辑此文件。但是,如果您在直接编辑注册表时只修改一个子键,则会出现如下四种情况:
● 如果只修改HKEY_CLASSES_ROOT中的1ST项,则在双击1ST后缀的文件时将激活LotusAmi Pro。
● 如果只修改HKEY_CURRENT_USER中的1ST项,则在双击1ST后缀的文件时将激活Notepad。
● 如果只修改HKEY_LOCAL_MACHINE中的1ST项,则在双击1ST后缀的文件时将激活LotusAmi Pro。
● 如果只修改HKEY_USER中的1ST项,则在双击1ST后缀的文件时将激活Notepad。
在上面的例子中,HKEY_CLASSES_ROOT子键和HKEY_LOCAL_MACHINE子键看起来在控制文件关联上相互独立,这似乎有些自相矛盾,但是,要知道HKEY_CLASSES_ROOT根键就是HKEY_LOCAL_MACHINE\Software\Classes,因此,在改变HKEY_CLASSES_ROOT根键就是改变HKEY_LOCAL_MACHINE。
认识Windows2000注册表识
Windows 2000系列原名Windows NT 5.0,是微软公司开发的集Windows 98即插即用功能与Windows NT先进技术于一身的新一代网络操作系统。它分为四个产品,们分别是:Windows 2000 Professional(专业版)、Windows 2000 Server(服务器版)、Windows 2000 Advanced Server(高级服务器版)、Windows 2000 Datacenter Server(数据中心服务版)等四个版本。
我们知道,在Windows 95及以后的版本中,采用了一种叫做“注册表”的数据库将各种信息资源集中起来并存储各种配置信息。按照这一原则,Windows各版本中都采用了将应用程序和计算机系统全部配置信息容纳在一起的注册表,用来管理应用程序和文件的关联、硬件设备说明、状态属性以及各种状态信息和数据等。Windows2000自然也不例外。大家也许对Windows98的注册表很熟悉,但是Windows2000毕竟和Windows98不同。本文将以Windows 2000 Professional版本为例,向大家介绍一下Winsows2000的注册表。
首先要运行注册表编辑器。和Windows98类似,在【开始】菜单中单击【运行】,在弹出的对话框中键入“regedit”或“regedt32”,在单击确定,即可打开注册表编辑器。我们可以发现,Win2000注册表编辑器和Win98比起来界面没有明显的改变,但是内容和Win98相比,去掉了HKEY_DYN_DATA根键。只有KEY_LOCAL_MACHINE、HKEY_CLASSES_ROOT、HKEY_CURRENT_CONFIG、HKEY_USERS、HKEY_CURRENT_USER五个根键。下面将详细介绍每一根键的内容。
一、KEY_LOCAL_MACHINE
HKEY_LOCAL_MACHINE根键中存放的是用来控制系统和软件的设置。由于这些设置是针对那些使用Windows系统的用户而设置的,是一个公共配置信息,所以它与具体用户无关。该根键下面包含了五个子键:
1.HARDWARE子键
该子键包含了系统使用的浮点处理器、串口等有关信息。在它下面存放一些有关超文本终端、数字协处理器和串口等信息。HARDWARE子键又包括三个子键:
DESCRIPTION:用于存放有关系统信息;
DEVICEMAP:用于存放设备映像;
RESOURCEMAP;
2.SAM子键
该子键已经被系统保护起来,我们不可能看到里面的内容。
3.SECURITY子键
该子键位于HKEY_LOCAL_MACHINE\Security分支上,该分支只是为将来的高级功能而预留的。
4.SOFTWARE子键
该子键中保留的是所有已安装的32位应用程序的信息。各个程序的控制信息分别安装在相应的子键中。由于不同的机器安装的应用程序互不相同,因此这个子键下面的子键信息会有很大的差异。
5.SYSTEM子键
该子键存放的是启动时所使用的信息和修复系统时所需的信息,其中包括各个驱动程序的描述信息和配置信息等。System子键下面有一个CurrentControlSet子键,系统在这个子键下保存了当前的驱动程序控制集的信息。
二、HKEY_CLASSES_ROOT根键
HKEY_CLASSES_ROOT根键中记录的是Windows操作系统中所有数据文件的信息,主要记录不同文件的文件名后缀和与之对应的应用程序。当用户双击一个文档时,系统可以通过这些信息启动相应的应用程序。HKEY_CLASSES_ROOT根键中存放的信息与HKEY_LOCAL_MACHINE\Software\Classes分支中存放的信息是一致的。
HKEY_CLASSES_ROOT根键由多个子键组成,具体可分为两种:一种是已经注册的各类文件的扩展名,一种是各种文件类型的有关信息。由于该根键包含的子键数目最多,下面就以Avifile子键为例简要介绍它下面的子键的含义:
1.CLSID子键
Avifile子键下的第一个子键是“CLSID”,即“分类标识”,在选中它时可以看到其默认的键值。Windows系统可用这个类标识号来识别相同类型的文件。在HKEY_CLASSES_ROOT主键下也有一个子键“CLSID”,其中包含了所有注册文件的类标识。
2.Compressors子键
该分支下面的两个子键auds和vids分别给出了音频和视频数据压缩程序的类标识,通过这些类标识可以找到相应的处理程序,
(1) auds子键
该子键位于HKEY_CLASSES_ROOT\avifile\Compressors\auds分支上,用于设置音频数据压缩程序的类标识。
(2) vids子键
该子键位于HKEY_CLASSES_ROOT\avifile\Compressors\vids分支上,用于设置视频数据压缩程序的类标识。
3.DefaultIcon子键
该子键用于设置avifile的缺省图标。
4.RIFFHandlers子键
该子键用于设置RIFF文件的句柄。在该子键下包含了AVI和WAVE两个文件的类标识。
(1) AVI子键
该子键位于HKEY_CLASSES_ROOT\avifile\RIFFHandlers\AVI分支上,用于设置AVI文件的类标识。
(2) WAVE子键
该子键位于HKEY_CLASSES_ROOT\avifile\RIFFHandlers\WAVE分支上,用于设置WAVE文件的类标识。
5.protocol子键
该分支下的子键中包含了执行程序和编辑程序的路径和文件名,
(1) StdExecute子键
该子键具有如下子键结构:
HKEY_CLASSES_ROOT\avifile\protocol\StdExecute\Server
它用于指定avifile的标准执行程序。
(2) StdFileEditing子键
该子键位于HKEY_CLASSES_ROOT\avifile\protocol\StdFileEditing分支上,用于设置标准文件编辑程序。
在该子键下面有如下三个子键:
①Server子键
该子键位于HKEY_CLASSES_ROOT\avifile\protocol\StdFileEditing\Server分支上,用于指定编辑程序。
②PackageObjects子键
该子键位于HKEY_CLASSES_ROOT\avifile\protocol\StdFileEditing\PackageObjects分支上,用于指定打开avifile的包对象编辑程序。
③verb子键
该子键位于HKEY_CLASSES_ROOT\avifile\protocol\StdFileEditing\verb分支上,用于设置打开标准avi文件编辑程序时的工作状态。 另外,还有“Handler”和“Handlers”两个子键。
6.Shell子键
该子键位于HKEY_CLASSES_ROOT\avifile\Shell分支上,用于设置视频文件的外壳。
(1) Open子键
该子键具有如下子键结构:
HKEY_CLASSES_ROOT\avifile\Shell\Open\Command
它用于设置“打开”avi文件的程序。
(2) Play子键
该子键具有如下子键结构:
HKEY_CLASSES_ROOT\avifile\Shell\Play\Command
它指定用于“播放”命令的程序
7.shellex子键
该子键位于HKEY_CLASSES_ROOT\avifile\shellex分支上。该分支的子键中包含了视频文件的外壳扩展,
在该子键下面有一个PropertySheetHandlers子键,用于设置“视频文件属性页”(Avi Page)的文件句柄。
在PropertySheetHandlers子键下面还有一个AviPage子键,用于设置AviPage的类标识。
三、HKEY_CURRENT_CONFIG根键
如果你在Windows中设置了两套或者两套以上的硬件配置文件(Hardware Configuration file),则在系统启动时将会让用户选择使用哪套配置文件。而HKEY_CURRENT_CONFIG根键中存放的正是当前配置文件的所有信息。
四、HKEY_USERS根键
HKEY_USERS根键中保存的是默认用户(.DEFAULT)、当前登录用户与软件(Software)的信息。它的下面有三个子键:.DEFAULT子键、S-1-5-21-1229272821-436374067-1060284298-1000和S-1-5-21-1229272821-436374069-1060284298-1000_Classes三个子键,其中最重要的是.DEFAULT子键。
.DEFAULT子键的配置是针对未来将会被创建的新用户的。新用户根据默认用户的配置信息来生成自己的配置文件,该配置文件包括环境、屏幕、声音等多种信息
.DEFAULT下面有九个子键,下面介绍其中几个:
1.AppEvents子键
它包含了各种应用事件(包括事件名称、描述以及各种系统功能的声音)的列表。其下面又包含两个子键EventLabels(按字母顺序列表)和Schemes(按事件分类列表)。
2.Control Panel子键
它所包含的内容与桌面、光标、键盘和鼠标等设置有关。改变它们的键值就将改变对应的工作环境或参数。
3.keyboard layout子键
该子键位于HKEY_USERS\.DEFAULT\keyboard layout分支上,用于设置键盘的布局,如键盘语言的加载顺序等。该子键下面提供有如下三个子键:
preload子键
(1)该子键位于HKEY_USERS\.DEFAULT\keyboard layout\preload分支上,用于设置键盘语言的加载次序。Preload子键下面的子键个数与您在系统中所安装的键盘语言有关。
(2)Substitutes子键
该子键位于HKEY_USERS\.DEFAULT\keyboard layout\substitutes分支,用于设置可替换的键盘语言布局。在通常情况下,此子键的设置是空的。
(3)Toggle子键
该子键位于HKEY_USERS\.DEFAULT\keyboard layout\toggle分支上,用于选择键盘语言。
五、HKEY_CURRENT_USER根键
HKEY_CURRENT_USER根键中保存的信息(当前用户的子键信息)与HKEY_USERS\.Default分支中所保存的信息是相同的。任何对HKEY_CURRENT_USER根键中的信息的修改都会导致对HKEY_USERS\.Default中子键信息的修改,反之也是如此。
第五节 相关工具
一、注册表的备份
(1)直接将注册表文件System.dat和User.dat拷贝到硬盘指定的目录下或直接拷贝到软盘上作为备份。恢复时将该备份替换覆盖回原处即可。
(2)利用Windows自带regedit备份注册表。
(3)利用Windows95自带的紧急事故恢复工具(Emergency Recovery Utility),仅适合Windows 9x系统。
(4)利用Ghost工具备份整个系统。
注册表与系统的备份相当重要,在你尝试一个新的软件时,建议你先备份一下注册表,这样在必要时可分析出安装程序在注册表里做的标志。
二、监视工具
(1)注册表"监视员"Regmon
Regmon(Registry Monitor)是一个出色的注册表数据库实时监视软件,它将与注册表数据库相关的一切操作(如读取、修改、出错信息等)全部记录下来以供用户参考,并允许用户对记录的信息进行保存、过滤、查找等处理,这就为用户对系统的维护提供了极大的便利r。
(2)注册表监视器Regsnap
RegSnap是一个专门用于比较Windows注册表及系统启动设置文件变化的工具。Regsnap的原理非常简单:在需要的时候,通过"File/New"菜单或工具条按钮将当前注册表及相关内容保存到扩展名为rgs的文件中(如在安装新软件之前和软件安装结束后分别保存一次),然后通过"File/Compare"菜单比较这两个文件,Regsnap就会详细地报告注册表及与系统有关的其他内容的变化情况。
Regsnap对系统的比较报告非常具体。对注册表可报告修改了哪些键,修改前、后的值各是多少;增加和删除了哪些键以及这些键的值。报告结果既可以以纯文本的方式,也可以html网页的方式显示,非常便于查看。
除系统注册表以外,Regsnap还可以报告系统的其他情况:Windows的系统目录(缺省是c:\Windows)和系统的system子目录下文件的变化情况,包括删除、替换、增加了哪些文件;Windows的系统配置文件win.ini和system.ini的变化情况,包括删除、修改和增加了哪些内容;自动批处理文件autoexec.bat是否被修改过。
(3)注册表监视器RegShot
RegShot是一个国产免费软件,作者是TiANWEi。这个软件可以比较注册及系统配制文件的变化。它的原理是在运行该软件之前作个记录,在运行它之后作个记录,比较二者的差别。
(4) 文件监视器FileMon
FileMon是Sysinternals推出的一款自由软件,适用于Windows NT/2000和Windows 95/98/ME系列平台。凭着它的强大功能,用户可以了解系统的工作情况、可查看应用程序的文件和DLL库的使用情况,甚至还可以捕捉到底层文件访问的各种细节所在。而且当文件的读写等事件发生的时候,FileMon还能精确记录下这些事件的发生时刻、持续时间以及操作结果等重要数据,因此,FileMon便成了分析人员们必备的工具之一。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者