注册表基础知识Word格式.docx
- 文档编号:16788457
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:10
- 大小:24.48KB
注册表基础知识Word格式.docx
《注册表基础知识Word格式.docx》由会员分享,可在线阅读,更多相关《注册表基础知识Word格式.docx(10页珍藏版)》请在冰豆网上搜索。
注意WindowsXP的注册表不存在此根键。
从上面可以看出,注册表实际上只有两个主要根键,HKEY_LOCAL_MACHINE和HKEY_USERS,其余的根键都只是这两个根键的某个分支。
注册表中所有的数据都是通过一种树状结构以键和子键的方式组织起来,十分类似于文件夹的目录结构,每个类似文件夹的项目被称做键(主键,Windows2000及以后的注册表编辑器把它叫做项),它们可能包含一系列子项目,叫做子键(或子项),子键可以包含更多的子键。
另外还有一个常被提到的分支的概念,它表示一个特定的子键及其所包含的一切。
在注册表编辑器的右侧窗格中,我们可以看到每个键均可包含任何数量的值(也称做键值、值项),每个值均包含三部分:
名称、数据和数据类型,数据类型大致可分为三种:
1.字符串(REG_SZ):
可以是任何字符,最大长度不能超过255个英文字符。
Windows2000及以后的操作系统还提供了另外两种字符串:
多字符串(REG_MULTI_SZ)和可扩充字符串(REG_EXPAND_SZ)。
2.二进制(REG_BINARY):
没有长度限制的二进制数据,在注册表编辑器中,二进制是以十六进制的方式显示出来的。
3.DWORD/双字(REG_DWORD):
32位(4个字节,即双字)长度的二进制数值,注册表以8位16进制数来显示DWORD值,在编辑DWORD数值时,可以选择用十进制还是16进制的方式进行输入。
注册表HKEY_CLASSES_ROOT根键的简要分析
在Windows注册表里,HKEY_CLASSES_ROOT是列在第一位的根键,其重要性可想而知,其实它就是HKEY_LOCAL_MACHINE\Software\CLASSES中的全部内容,对HKEY_CLASSES_ROOT的修改其实也就是对HKEY_LOCAL_MACHINE\Software\CLASSES的修改。
据说微软把它单独列出来是为了向下与Windows3.x兼容,不过更重要的应该是方便了查阅,使用户能更快的获取信息。
HKEY_CLASSES_ROOT是个非常庞大的数据库,它包括了注册表一半以上的数据,大家可以把HKEY_CLASSES_ROOT单独导出来,再导出整个注册表,对比一下就很清楚了。
HKEY_CLASSES_ROOT大体上包括了已注册的文件类型、OLE信息以及更多的内容,可以粗略地分为两个部分:
A、前面带“.”的键,B、前面不带“.”的键,A部分的键均可以在B部分找到相对应的键,下面举一个BMP文件的例子来说明。
BMP文件也就是扩展名为BMP的文件,打开注册表编辑器,找到HKEY_CLASSES_ROOT\.bmp,可以看到右边“默认”的值是“ACDSee.BMP”(假定已安装了ACDSEE并与BMP文件关联),然后找到HKEY_CLASSES_ROOT\ACDSee.BMP,可以看到里面有多个子键。
“DefaultIcon”子键定义了Windows显示此文件类型的图标,其“默认”的值是“C:
\ProgramFiles\ACDSystems\PlugIns\IDE_ACDStd.apl,1”,表示定义BMP文件显示图标的图标文件,最后的“1”表示图标的ID(从0开始计数),因为“IDE_ACDStd.apl”这个文件不只包含一个图标。
“shell”子键定义了BMP文件的打开方式,包含了子键“edit”、“Open”等等,在“shell”子键右边“默认”值中的“Open”就是默认打开文件的方式(通过双击即用这种方式打开),“edit”和“Open”都各有一个子键“command”,其“默认”的值就是用于打开BMP文件的应用程序,这两个项目都会出现在BMP文件的右键菜单里,若删除“edit”键,则相应右键菜单项也将被删除,也可以另外添加主键,指定更多的程序用来关联打开BMP文件,其右键菜单也会出现相应项目。
还有一个子键“CLSID”,表示它的类标识符(CLSID)名称,每个类标识符的信息都可以在HKEY_CLASSES_ROOT\CLSID中查找。
一些类标识符还会定义一个程序标识符(ProgID),它通常都简短易读,大大方便了程序的调用而不必使用冗长而乏味的类标识符。
注册表的一些使用技巧
△不重启使注册表修改生效的方法
Windows95/98/ME:
按下CTRL+ALT+DELETE,弹出“关闭程序”对话框,选择“Explorer”,然后单击“结束任务”,显示关闭计算机的画面,单击“取消”,十秒钟后将会弹出一个程序没有响应的对话框,单击“结束任务”,Windows资源管理器将与新的注册表设置一起重新加载。
Windows2000/XP/2003:
按下Ctrl+Alt+Delete,然后选择“任务管理器”。
选择“进程”标签,选择“explorer.exe”进程,单击“结束进程”,选择“文件->
新任务”,然后输入“explorer”,单击“确定”。
注意:
并不是所有注册表的修改都能通过这种方法生效,有些需要注销再登录,在HKEY_CURRENT_USER中所做的修改都可以使用前面这两种方法生效,但是在HKEY_LOCAL_MACHINE中的一些设置仍然需要重新启动,如在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet中所做的修改。
△reg文件的一些说明和用法
1.reg文件字符串值中路径的斜杠要用双斜杠表示,否则导入将无效,即C:
\WINDOWS要表示成"
C:
\\WINDOWS"
。
2.要删除某子键,在reg文件中在键的最前面加上“-”,如:
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\WinOldApp]
3.要删除某键值,在值的等号后面加上“-”,如:
[HKEY_CLASSES_ROOT\lnkfile]
"
IsShortcut"
=-
△通过inf文件修改注册表
inf文件是Windows的设置信息文件,它一般是用来设置或安装设备驱动、软件配置等信息。
更为重要的是,我们可以在inf文件中设定一些语句达到对注册表的修改。
这个方法有时非常有用,例如,如果注册表被锁,reg文件不能使用,那么通过inf文件就很容易解决,下面给出一个inf文件修改注册表的例子:
[Version]
Signature="
$CHICAGO$"
[DefaultInstall]
Addreg=Add
Delreg=Del
[Add]
HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Run,regedit,0,"
regedit.exe"
HKCU,SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer,NoDrives,1,01,00,00,00
HKCU,SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer,NoFileMenu,0x10001,01,00,00,00
[Del]
HKCU,SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System,DisableRegistryTools
Addreg定义添加或修改注册表键值的段标题“Add”(名称可以随便取),同理Delreg定义删除注册表键值的段标题“Del”,注意无论Addreg与Delreg顺序如何,Windows总是先处理Addreg再处理Delreg。
修改注册表的语句格式是:
“根键,子键,值名,类型,值”。
根键使用缩写HKCR(HKEY_CLASSES_ROOT),HKCU(HKEY_CURRENT_USER),HKLM(HKEY_LOCAL_MACHINE),HKU(HKEY_USERS),HKCC(HKEY_CURRENT_CONFIG);
数据类型“0”表示字符串值,“1”表示二进制值,“0x10001”表示DWORD值。
要应用inf文件不是通过双击它(双击只会打开文件编辑),而是右键点击它然后在菜单中选“安装”。
△用reg命令修改WindowsXP注册表
WindowsXP新增了一个功能非常强大的命令“reg”,通过它可以很方便地对注册表键和键值进行修改、增加、删除、比较、复制、导入、导出等操作(详情参看Windows“帮助与支持”)。
如果注册表编辑器被锁定,可以通过如下运行命令恢复使用:
regdeletehkcu\software\microsoft\windows\currentversion\policies\system/vdisableregistrytools/f
△Windows2000中的regedt32
Windows2000的regedit相当与Windows98的regedit,它不能像WindowsXP的regedit那样设置注册表项(键)的权限,不能创建多字符串(REG_MULTI_SZ)和可扩充字符串(REG_EXPAND_SZ),也不能通过加载配置单元来修改其他用户的文件。
若要使用这些功能,必须使用32位的注册表编辑器:
regedt32。
另外在WindowsXP中,regedit和regedt32已没有任何区别。
△使用注册表编辑器的收藏夹
注册表的分支太多太长,要找一个键往往需要连续点击好几个分支,偶尔用用到无所谓,不过对于经常需要修改注册表的人来说,这严重影响了工作的效率。
Windows2000以上的注册表编辑器提供了收藏夹菜单,就像IE的收藏夹那么方便,能够快速定位到所需的子键,操作方法就像IE的收藏夹,选择某个子键添加就行了。
△修改其他用户的配置文件
在WindowsXP及其它多用户系统中,不同用户的配置文件是分开存放的。
默认情况下,注册表编辑器不会加载其它未登录用户的配置文件,如果要修改其他用户的配置文件,在注册表编辑器中,单击HKEY_USERS根键,然后选择文件菜单下的“加载配置单元”打开“C:
\DocumentsandSettings\用户名”的文件夹,选择NTUSER.DAT文件,然后按“开始”后会弹出对话窗口,在“项名称”框内输入名称。
在HKEY_USERS下便多了一个刚才输入项名称的文件夹,这个文件夹便是所需修改的用户配置文件,修改完成后选中刚才输入“项名称”的文件夹,然后选择文件菜单下的“卸载配置单元”即可。
△搜索注册表的技巧
注册表搜索的方式是从上往下的,如果你要搜索整个注册表,先点击选择HKEY_LOCAL_MACHINE根键再开始搜索,因为前面那两个根键都已经包含在后面的HKEY_LOCAL_MACHINE和HKEY_USERS中了,所以从HKEY_LOCAL_MACHINE开始搜索可以大大节省搜索的时间。
△关于Policies\Explorer子键
在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer中所有的设置都可以应用于HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer,后者的优先级比前者要高,而且属于本地计算机设置,所以对所有用户都有效。
△数据类型:
二进制与DWORD
二进制:
没有长度限制的二进制数值表示16进制。
DWORD(双字):
以16进制形式的32位二进制数值(双字),注册表以8位16进制数显示DWORD。
只要数值在DWORD允许的范围之内,二者可以互换,作用是等价的。
在MS-DOS下维护WINDOWS9X注册表
一、REGEDIT命令
REGEDIT命令不仅仅是一个WINDOWS程序,在MS-DOS下也可以运行使用。
虽然功能没有在WINDOWS下那么强大,但有时也很有用处,比如系统出现问题无法进入WINDOWS的时候。
首先说明一下,WINDOWS9X的注册表全部保存在SYSTEM.DAT和USER.DAT这两个文件中,使用REGEDIT命令就是对这两个文件进行操作。
以下是REGEDIT的命令行参数:
REGEDIT[/L:
SYSTEM][/R:
USER]filename1
USER]/Efilename2[regpath1]
USER]/Dregpath2
USER]/Cfilename3
/L:
SYSTEM:
指定SYSTEM.DAT文件的位置,不指定则默认在WINDOWS目录
/R:
USER:
指定USER.DAT文件的位置,不指定则默认在WINDOWS目录
filename1:
指定导入注册表的文件
/Efilename2:
指定导出注册表的文件
regpath1:
指定导出注册表的分支,不指定则导出整个注册表
/Dregpath2:
指定删除注册表的分支
/Cfilename3:
指定用来重建注册表的文件
下面通过实例来详细说明各参数的用法:
1.将reg文件导入注册表
把当前目录的file1.reg文件导入到C:
\WINDOWS\SYSTEM.DAT和C:
\WINDOWS\Profiles\USER.DAT中,命令如下:
regedit/l:
c:
\windows\system.dat/r:
\windows\profiles\user.datfile1.reg
reg文件不仅可以是以前导出过的,还可以利用edit.exe这个命令来编写或修改,再通过上面的方法导入,从而达到手工修改注册表的目的。
2.将注册表导出为reg文件
把保存在C:
\WINDOWS\Profiles\USER.DAT中所有HKEY_CURRENT_USER根键下的分支导出到file2.reg中,命令如下:
\windows\profiles\user.dat/efile2.reghkey_current_user
3.删除指定的注册表分支
如果我们要将保存在C:
\WINDOWS\Profiles\USER.DAT中的HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run分支删除,命令如下:
\windows\profiles\user.dat/dhkey_current_user\software\microsoft\windows\currentversion\run
4.用指定的reg文件重建注册表
如果我们要用file3.reg文件中的内容重新建立整个注册表,并将其保存到C:
\windows\profiles\user.dat/efile3.reg
这是一个危险操作,它将会用指定reg文件的全部内容,重新创建一个注册表,从而删除了以前的注册表。
二、SCANREG命令
SCANREG.EXE是MS-DOS下的WINDOWS注册表检查器,主要用来备份和恢复注册表,其命令格式为:
SCANREG[/<
option>
]
<
BACKUP:
备份注册表及相关的系统配置文件
RESTORE:
选择一个备份文件来恢复注册表
FIX:
修复注册表错误
COMMENT="
comment>
:
与BACKUP一起使用,用来给备份的CAB文件添加注释
在显示备份的注册表文件时,压缩备份的文件以.CAB文件列出,CAB文件的后面单词是Started或者是NotStarted,Started表示这个文件能够成功启动WINDOWS,是一个完好的备份文件,NotStarted表示文件没有被用来启动WINDOWS,所以不知道是否是一个完好备份。
注册表实用工具介绍
☆RegEditX(RegistryEditorExtensions)☆
RegEditX是一款给注册表编辑提供地址栏功能的软件。
它提供了与InternetExplorer或资源管理器地址栏类似的功能,只要把注册表某分支的完整路径复制下来,再粘贴到地址栏上,就可以直接快速的定位到该分支,非常方便!
软件安装成功后,在“运行”对话框键入“Regeditx”即可运行。
☆RegistryCrawler☆
RegistryCrawler作为RegEditX的配套软件,是一个能够快速定位并配置注册表的工具软件。
一个强大的搜索引擎允许你基于搜索标准查找注册信息。
允许你单击超链接显示条目。
支持书签功能,可在注册表中的任何键中添加书签并直接从系统托盘读取。
此特征允许你访问你经常存取的注册键而无需手工打开注册表编辑器。
每天需要操作注册表的用户会发现RegistryCrawler是一个节约时间的工具。
☆RegistryWorkshop☆
一款高级的注册表编辑工具,能够完全替代WIndows系统自带的RegEdit注册表编辑器。
除了RegEdit的特性外,RegistryWorkshop提供许多其他功能提高注册表编辑操作效率:
能够剪切,复制和粘贴注册项和键值名,还可以进行撤销和重做操作;
能够快速地查找和替换所需注册项,键值名和字符串;
允许编辑注册表文件(reg文件)像编辑注册表一样,显示直观的树状结构;
并且提供方便灵活的收藏夹功能。
☆RegOrganizer☆
功能非常强大的注册表综合管理工具。
主要功能有:
编辑注册表:
拥有与RegEditX同样的地址栏功能,也提供收藏夹功能。
键与键值的排列顺序可以选择按字母或按习惯使用的频度,可以为每个键添加注释以供以后查阅,导入reg文件时提供预览功能。
清理注册表:
与一般的注册表清理工具一样,扫描及修复注册表错误及无效的部分,不过它还具有更多更直观的定制功能,可以选择普通清理或高级清理方式。
查找和替换:
可以在指定键中查找,或者查找整个注册表,对于找到的键或键值,可以选择不操作,手动替换和自动替换。
编辑ini文件(配置文件):
ini文件与注册表非常相似,大家知道注册表就是从win.ini和system.ini这两个系统配置文件演变而来的,用RegOrganizer打开的ini文件看起来就像注册表一样,只是分支只有一级而没有嵌套。
安装/卸载软件:
注意只有通过RegOrganizer安装的软件才能通过它来卸载。
RegOrganizer会记录安装的软件所做的所有改动,包括注册表和文件,可以很方便的查看各项记录。
通过这样记录的软件当然可以完全从系统卸载而不留一丝痕迹。
☆Regmon(RegistryMonitor)☆
Regmon是一个出色的注册表监视软件,它将与注册表数据库相关的一切操作(如读取、修改、出错信息等)全部记录下来以供用户参考,并允许用户对记录的信息进行选择性过滤(这一点很重要,因为注册表处理的数据量是非常大的)、查找、保存等处理。
使用过程中可以让它停止记录,从而更好的观察先前注册表的变动。
通过双击列出的注册表条目,可以直接打开注册表编辑器并定位到相关的注册表分支。
这些功能为用户对系统的维护提供了极大的便利。
☆RegSnap☆
注册表比较工具,你可以在任何时候为系统文件进行扫描和快照,通过比较两个或多个不同的快照而找出它们之间的差别。
RegSnap对系统的比较报告非常具体,对注册表可报告修改了哪些键,修改前、后的值各是多少;
增加和删除了哪些键以及这些键的值。
除系统注册表以外,RegSnap还可以报告系统的其他情况:
Windows、Windows\system、ProgramFiles文件夹及我的文档中所有文件的变化情况,包括删除、替换、增加了哪些文件;
Windows的系统配置文件config.sys、autoexec.bat、win.ini和system.ini的变化情况,包括删除、修改和增加了哪些内容。
☆RegShot☆
一个小巧、实用的注册表比较工具,一次只能创建两个快照,可以添加任意目录来进行文件比较。
☆WinRescue☆
WinRescue是一个最经典,最优秀,最小巧的Windows系统备份及恢复工具。
当你的Windows操作系统发生问题无法开机,连安全模式也有问题时,你可能会选择重装操作系统一途。
其实您应该首先使用这个软件。
它可以帮助你在平时事先备份Windows的结构配置相关文件及你想备份的任何
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 注册表 基础知识