注册表必备基础知识
第一章 修改注册表必备基础知识
1.1 如何打开注册表编辑器
注册表是Windows系统存储关于计算机配置信息的数据库,包含了计算机中每个用户的配置文件、有关系统硬件的信息、安装的程序及属性设置,Windows在其运行中不断引用这些信息。
通过本章学习,读者可以掌握注册表的基本知识,并使用系统自带的注册表编辑器对注册表进行诸如查、修改、新建和删除项或值项以及备份、还原等维护工作。
1.1 如何打开注册表编辑器
Windows XP自带有一个注册表编辑工具——注册表编辑器,它是用来查看和更改系统注册表设置的高级工具,有经验的高级用户可以通过它来编辑注册表,改变系统设定。
要运行注册表编辑器,可以单击【开始】按钮,在弹出的【开始】菜单中,单击【运行】命令,在“运行”对话框中键入“regedit”,然后单击【确定】按钮。
如果要从Windows XP资源管理器中运行注册表编辑器,双击Windows XP系统分区的Windows\System32文件夹中的。
[2楼]:
1.2 注册表编辑器的结构
在Windows XP中,采用了将应用程序和计算机系统全部配置信息容纳在一起的注册表数据库来进行统一管理。注册表的特点如下:
1.注册表允许对硬件、系统参数、应用程序和设备驱动程序进行跟踪配置,这使得修改某些设置后不用重新启动成为可能。
2.注册表中登录的硬件部分数据可以支持高版本Windows的即插即用特性。当Windows检测到机器上的新设备时,就把有关数据保存到注册表中,另外,还可以避免新设备与原有设备之间的资源冲突。
3.管理人员和用户通过注册表可以在网络上检查系统的配置和设置,使得远程管理得以实现。
注册表是一个层次数据库,有如下嵌套结构和数据组成:
l 子树(Subtrees):在注册表结构中,子树是包含项、子项和值项的主要节点。
l 项(Keys):子树下的主要分支。在“注册表编辑器”中,出现在“注册表编辑器”窗口左窗格中的文件夹。项可以包含子项和值项。例如,Environment是HKEY_CURRENT_USER的一个项。
l 子项(Subkeys):项中的项。在注册表结构中,子项附属于子树和项。项和子项类似于 .ini 文件中的部分头;但是,子项可以执行某些功能。
l 值项(Value Entries):出现在注册表窗口右窗格中的数据字符串,定义了当前所选项的值。值项有三个部分:名称、数据类型和值本身,它主要用来保存影响系统的实际数据。
在其他的书籍或者文档中,由于各种原因使用了一些不同的名词来表达注册表的结构,甚至在微软的帮助文件中也存在着不明确
、不统一的地方。由于存在这些问题,可能会对读者的理解和实践带来一定的影响,所以在本书中,参照Windows XP的“注册表编辑器”的操作命令和帮助文件对注册表的某些名词进行了统一,如图1-10所示。
例如在本书中统一使用“子树”表示“根键”、“预定义项”、“根项”等,“项”表示“键”,“子项”表示“子键”,“值项”表示“键值项”,“值项值”表示“键值”。
[3楼]:
子树
在访问本地计算机的注册表时,注册表编辑器中将出现5个子树:HKEY_CURRENT_USER、HKEY_USERS、HKEY_LOCAL_MACHINE、HKEY_CLASSES_ROOT、HKEY_CURRENT_CONFIG;当访问远程计算机的注册表时,只出现两个子树:HKEY_USERS和HKEY_LOCAL_MACHINE。
l 1、HKEY_CURRENT_USER
包含当前登录用户的配置信息的根目录。用户文件夹、屏幕颜和“控制面板”设置均存储在此处。该信息被称为用户配置文件。
l 2、HKEY_USERS
包含计算机上所有用户的配置文件的根目录。HKEY_CURRENT_USER 是 HKEY_USERS 的子项。主要由.DEFAULT子项构成,新用户根据默认用户.DEFAULT子项的配置信息来生成自己配置文件,该配置文件包括环境、屏幕、声音等多种信息。
l 3、HKEY_LOCAL_MACHINE
包含针对该计算机(对于任何用户)的配置信息。主要由HARDWARE、SAM、SECURITY、SOFTWARE、SYSTEM等项组成:
l 4、HKEY_CLASSES_ROOT
是HKEY_LOCAL_MACHINE\Software的子项。此处存储的信息可以确保当使用Windows 资源管理器打开文件时,将打开正确的程序。即在HKEY_LOCAL_MACHINE\Software\Classes中或者在HKEY_LOCAL_USER\Software\Classes中出现的值,如果该信息同时在两处出现,那么HKEY_LOCAL_USER\Software\Classes拥有优先权。
HKEY_CLASSES_ROOT下的子项可分为两类:一类是已经注册的各类文件的扩展名,这类子项都是以“.”加上扩展名命名的;另一类是各种文件类型的有关信息,这类子项是以字母开头的。
l 5、HKEY_CURRENT_CONFIG
包含本地计算机在系统启动时所用的硬件配置文件信息,实际上是从两个注册表项创建而来的,即HKEY_LOCAL_MACHINE\System和HKEY_LOCAL_MACHINE\Software。因为此子树是动态创建的,因此修改它的内容没有什么实际意义。
值项
值项是注册表中的最小单元,其中保存的数据决定项和子项的操作(尽管不是所有的项和子项均包含值项)。一个值项包含三个元素:
l 名称
l 数据类型
l 值项值
在Windows XP中,注册表的数据类型有以下几种:
1、字符串型
注册表中,“字符串”代表的是文本或文字信息。它既可以是对文字类型进行说明的文字,也可以是硬件设备上的一个标签,甚至可以是登录时显示
的一段文字,每个文本字符串的最大长度通常为255个字符。
l REG_SZ(字符串值)
REG_SZ代表一个简单的文本字符串,它是注册表中最常见的一种数据类型,在字符串编辑器对话框
中可以输入许多类型的信息,如名称、路径、标题或说明文字等。REG_SZ也可以是一个数字,例如可用来表示RGB颜码,或者版本号等其他类型的信息。
l REG_MULTI_SZ(多字符串值)
REG_MULTI_SZ条目允许将一系列项目作为单独的一个值使用。对于多种网络传输协议、设备列表以及其他类似的列表项目来说,都可以使用该条目。如果REG_MULTI_SZ之内的项目拥有多个条目,则每个条目都单独占据一行。例如可以为一块网卡设置多个IP地址。
l REG_EXPAND_SZ(可扩充字符串值)
代表一个可扩展的字符串。其编辑器和标准REG_SZ字符串编辑类似,只是在变量用法上有所差异。在REG_EXPAND_SZ编辑器中输入变量时,系统会将它当作变量看待。激活此变量时,会显示变量的具体值。
例如在对话框中的“%SYSTEMROOT%”是一个变量名,激活它之后,会返回到Windows XP所在的目录。
2、其他数据类型
REG_DWORD,REG_BINARY和REG_RESOURCE_MAP都允许用数值信息对硬件和软件项目进行定义。实际的数值数据可采用二进制、十六进制或十进制格式输入。
l REG_DWORD(DWORD值)
REG_DWORD数据是32位的数值类型,常显示成四个字节,许多设备驱动程序和服务的参数是这种类型,也常用于出错控制中。在编辑时可选用二进制、十进制或十六进制格式进行。
l REG_BINARY(二进制值)
REG_BINARY与REG_DWORD的区别在于:REG_BINARY可以是任意长度,而REG_DWORD必须在四个字节以内。多数硬件组件信息都以二进制数据存储,而以十六进制格式显示在注册表编辑器中。
l REG_FULL_RESOURCE_DESCRIPTOR
允许对硬件设备正在使用的实际设置进行查看和编辑。设计用来存储硬件元件或驱动程序的资源列表的一列嵌套数组。
[4楼]:
1.3 注册表的安全要求
尽管可以用注册表编辑器查看和修改注册表,但是通常不必这样做,因为这样做在简化了对计算机或网络的管理的同时,却使得对注册表的一个错误编辑就可能会令操作系统瘫痪。因此在使用注册表编辑器之前,应注意以下安全要求:
1、在更改注册表之前,建立备份副本。
2、不要使用其他版本的Windows操作系统的注册表来替换Windows XP注册表。
3、尽量使用可提供更安全的编辑注册表方法的工具和程序而不是注册表编辑器来编辑注册表。
4、不要让注册表编辑器在无人值守的状态下运行。
另外还需要特别注意的是,注册表编辑器不
提供任何类型的确认、取消或者恢复功能,因此用户的每一个操作都将自动提交并执行。
[5楼]:
利用注册表编辑器,我们可以对注册表进行各种操作。
新建项
在新建项之前,首先选定要创建的位置,然后单击【编辑】菜单中的【新建】子菜单,选择【项】命令。
或者在选定位置后直接单击鼠标右键,然后在弹出的快捷菜单中选择【新建】中的【项】命令。在选定的位置下会添加一个临时名称为“新项#1”新项,为新建的项指定一个名称,完成后按回车键即可。
新建值项
选定要添加值项的项,然后与建立项操作一样,单击鼠标右键,在弹出的快捷菜单中选择【新建】中的【字符串值】命令。在选定的位置下会添加一个临时名称为“新值#1”的新值项,为新建的值项指定一个名称,完成后按回车键即可。双击该字符串,在“编辑字符串”对话框中的“数值数据”文本框中输入相应的值项值,然后单击【确定】按钮即可输入值项值。
用同样的方法,即可建立二进制值、DWORD值等值项。
重命名项
在修改项的名称时,我们可以单击注册表编辑器的【编辑】菜单中的【重命名】命令,也可以通过在
修改项上单击鼠标右键,然后选择【重命名】命令。输入新名称后按回车键即可达到修改项名称的目的。
重赋值项值
如果要更改值项值,可以在注册表编辑器的右窗口中通过双击需修改的值项,在出现的对话框的中输入新的数值数据,然后单击【确定】按钮即可。
删除项或值项
选中要删除的项或值项,然后在【编辑】菜单中选择【删除】命令,或者直接选中后单击鼠标右键,在弹出的菜单中选择【删除】命令,然后在弹出对话框中单击【是】按钮即可。
查项或值项
当我们知道一个项的名称但是不到其具体位置时,可以通过单击【编辑】菜单中的【查】命令,在弹出的对话框中输入我们需要查的目标。在“查”对话框中,还可以自定义查范围,如项、值或数据,这样可以更快速的查到目标。如果我们选取“全字匹配”复选框时,则只会查出输入的字符串,反之则会查出包含输入字符串的所有字符串。例如在默认情况下,如果在注册表中查“soft”的字符串,则查的结果可能是“software”或“Microsoft”。
单击【查下一个】按钮,即开始在注册表中内查键入的内容。若系统查到匹配的字符串值,则会很快定位在该字符串对应的项或值项数据。
这样我们可以对此进行修改或其他操作。然后我们可以单击【编辑】菜单中的【查下一个】命令或者直接按快捷键F3,继续查所需的字
符串。
远程编辑注册表
我们知道Windows XP主要用于网络上,对于系统管理员如果去管理一台远程的计算机是很重要的,特别是注册表上的管理更是显得至关重要。通过远程编辑注册表,系统管理员就可以很方便地管理网络上的每一台计算机。但是在编辑远程计算机注册表时最好通知远端用户备份注册表,以防系统无法启动。
如果需远程连接一台计算机,首先用户必须同时在本地计算机和远程计算机上作为管理员或Administrators组成员登录,才能更改远程计算机上的注册表。然后单击注册表编辑器的【文件】菜单中【连接网络注册表】命令,在弹出对话框中,键入要连接到其注册表的计算机名,单击【确定】按钮即可编辑该计算机的注册表。
远程编辑注册表完成后,单击【文件】菜单上的【断开网络注册表】命令,在“断开网络注册表”对话框中,单击要断开其注册表连接的计算机名即可取消与远程注册表的连接。
打印全部或部分注册表
通过注册表编辑器还可以对注册标的内容进行打印输出。操作步骤如下:
首先单击在注册表编辑器中要打印的注册表区域的计算机或子树。
单击【文件】菜单上的【打印】按钮。
单击【全部】即可以打印整个注册表,单击【选定的分支】并在文本框中键入所需的分支,然后单击【打印】按钮,可以只打印部分注册表。
[7楼]:
1.5 注册表操作权限设置
多数情况下,注册表只能由系统管理员来编辑,而普通的用户只有浏览权。这样在一定程度上提高了系统的安全性,这也与Windows XP的安全策略相吻合。注册表编辑器工具提供了用户权限设置功能,系统管理员或超级用户具有该功能。
指派操作权限
要给注册表项指派权限的操作步骤如下:,
(1)打开注册表编辑器。
(2)单击想要指派权限的项。
(3)单击【编辑】菜单的【权限】命令。
(4)在对话框中,按照如下所示要求给所选项指派访问级别:
要授予用户读取该项内容的权限,但不保存对文件的任何更改,在“用户名称的权限”下面,选中“读取”中的“允许”复选框。
要授予用户打开、编辑所选项和获得其所有权的权限,在“用户名称的权限”下面,选中“完全控制”中的“允许”复选框。
(5)如果要授予用户对所选项的特殊权限,可单击【高级】按钮进行高级安全设置。
(6)如果所要授予的用户名称未出现“组或用户名称”中,可单击【添加】按钮,在弹出对话框中来选
xp提交更改择用户或组。
取得注册表项的所有权
对于每一个注册表项,系统管理员有权授予某个用户。用户一旦被授予所有权,
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论