1.我想知道 注册表里面个个主项的意识 比如HKEY-CLASSES-ROOT是什么意识

2.安装OFFICE2010时提示错误1406,无法写入注册表

3.注册表中控制键、段名、键名是什么意思?

4.office安装不能写入注册表 错误1406 安装程序无法将值clview.exe无法写入注册表 原创也没用啊!

5.请问注册表错误是怎么产生的啊?

6.注册表问题

错误写入注册表键是啥意思呢_错误写入注册表键hkey_classes_rootpdf

★什么是注册表?

从Windows 95开始,Microsoft在Windows中引入了注册表(英文为REGISTRY)的概念(实际上原来在Windows NT中已有此概念)。注册表是Windows 95及Windows 98的核心数据库,表中存放着各种参数,直接控制着Windows的启动、硬件驱动程序的装载以及一些Windows应用程序运行的正常与否,如果该注册表由于鞭种原因受到了破坏,轻者使Windows的启动过程出现异常,重者可能会导致整个Windows系统的完全瘫痪。因此正确地认识、修改、及时地备份以及有问题时恢复注册表,对Windows用户来说就显得非常重要了。

★如何打开注册表?(在修复注册表前请备份)

点“开始”→运行→输入“regedit”→确定

★一、注册表的结构划分及相互关系

WINDOWS的注册表有六大根键,相当于一个硬盘被分成了六个分区。

在“运行”对话框中输入RegEdit,然后单击“确定”按钮,则可以运行注册表编辑器。

Windows 98中文版的注册表Registry(System.dat、User.dat、Config.pol)的数据组织结构。

注册表的根键共六个。这些根键都是大写的,并以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\SY-STEM\Current Control就是HKEY_LOCAL_MACHINE\SYSTEM\Current Control。

HKEY_USERS中保存了默认用户和当前登录用户的用户信息。HKEY_CURRENT_USER中保存了当前登录用户的用户信息。

HKEY_DYN_DATA保存了系统运行时的动态数据,它反映出系统的当前状态,在每次运行时都是不一样的,即便是在同一台机器上。

根据上面的分析,注册表中的信息可以分为HKEY_LOCAL_MACHINE和HKEY_USERS两大类,这两大类的详细内容请看后面的介绍。

★二、六大根键的作用

在注册表中,所有的数据都是通过一种树状结构以键和子键的方式组织起来,十分类似于目录结构。每个键都包含了一组特定的信息,每个键的键名都是 和它所包含的信息相关的。如果这个键包含子键,则在注册表编辑器窗口中代表这个键的文件夹的左边将有“+”符号,以表示在这个文件夹中有更多的内容。如果这个文件夹被用户打开了,那么这个“+”就会变成“-”。

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中文版的安装的信息。图5为HKEY_CURRENT_CONFIG子关键字之间的连接情况。

4.HKEY_CLASSES_ROOT

根据在Windows 98中文版中安装的应用程序的扩展名,该根键指明其文件类型的名称。

在第一次安装Windows 98中文版时,RTF(Rich Text format)文件与写字板(WordPad)&127;联系起来,但在以后安装了中文Word 6.0后,双击一个RTF文件时,将自动激活Word。存放在SYSTEM.DAT中的HKEY_CLASSES_ROOT,将替代WIN.INI文件中的[Extensions]&127;小节中的设置项,它把应用程序与文件扩展名联系起来,它也替代了Windows 3.x中的Reg.dat文件中的相似的设置项。

5.HKEY_LOCAL_MACHINE

该根键存放本地计算机硬件数据,此根键下的子关键字包括在SYSTEM.DAT中,用来提供HKEY_LOCAL_MACHINE所需的信息,或者在远程计算机中可访问的一组键中。

该根键中的许多子键与System.ini文件中设置项类似。图7显示了HKEY_LOCAL_MACHINE根键下的各个子键之间的情况。

6.HKEY_DYN_DATA

该根键存放了系统在运行时动态数据,此数据在每次显示时都是变化的,因此,此根键下的信息没有放在注册表中。图8显示了HKEY_DYN_DATA根键下的各个子键的情况。

★三、注册表部分重要内容

注册表是一个大型数据库Registry。要详细地分析该数据库,不是一两页就能介绍完。我曾经用了半年多时间分析此数据库结构。下面只介绍部分重要内容。

(一)HKEY_CLASS_ROOT

1.HKEY_CLASS_ROOT/Paint.Pricture/DefaultIcon双击窗口右侧的默认字符串,在打开的对话框中删除原来的“键值”,输入%1。重新启动后,在“我的电脑”中打开Windows目录,选择“大图标”,然后你看到的Bmp文件的图标再也不是千篇一律的MSPAINT图标了,而是每个Bmp文件的略图(前提是未安装ACDSee等看图软件)。

(二)HKEY_CURRENT_USER

1.HKEY_CURRENT_USER\Control Panel\Desktop 中新建串值名MenuShowDelay=0 可使“开始”菜单中子菜单的弹出速度提高。

2.在HKEY_CURRENT_USER\Control Panel\Deskt-op\WindowsMeterics中新建串值名MinAnimate,值为1启动动画效果开关窗口,值为0取消动画效果。

(三) HKEY_LOCAL_MACHINE

1.HKEY_LOCAL_MACHINE\software\microsoft\windows\currentVersion\explorer\user shell folders 保存个人文件夹、收藏夹的路径。

2.HKEY_LOCAL_MACHINE\system\currentControl-Set\control\keyboard Layouts 保存键盘使用的语言以及各种中文输入法。

3.HKEY_LOCAL_MACHINE\software\microsoft\windows\currentVersion\uninstall 保存已安装的Windows应用程序卸载信息。

4.HKEY_LOCAL_MACHINE\system\CurrentControl-Set\services\class 保存控制面板-增添硬件设备-设备类型目录。

5.HKEY_LOCAL_MACHINE\system\Current-ControlSet\control\update 设置刷新方式。值为00设置为自动刷新,01设置为手工刷新[在管理器中按F5]。

6.HKEY_LOCAL_MACHINE\software\microsoft\win-dows\currentVersion\run 保存由控制面板设定的计算机启动时运行程序的名称,其图标显示在任务条右边。在“启动”文件夹程序运行时图标也在任务条右边。

7.HKEY_LOCAL_MACHINE\software\microsoft\windows\currentVersion\Policies\Ratings 保存IE4.0中文版“安全”\“分级审查”中设置的口令(数据加密),若遗忘了口令,删除 Ratings 中的数据即可解决问题。

8.HKEY_LOCAL_MACHINE\software\microsoft\windows\currentVersion\explorer\desktop\nameSpace 保存桌面殊的图标,如回收站、收件箱、MS Network等。

(四) HKEY_USERS

1.HKEY_USERS\.Default\software\microsoft\internet explorer\typeURLs保存IE4.0浏览器地址栏中输入的URL地址列表信息。清除文档菜单时将被清空。

2.HKEY_USERS\.Default\so..\mi..\wi..\current-Version\ex..\menuOrder\startMenu保留程序菜单排序信息。

3.HKEY_USERS\.Default\so..\microsoft\windows\current-Version\explorer\RunMRU保存“开始 \ 运行...”中运行的程序列表信息。清除文档菜单时将被清空。

4.HKEY_USERS\.Default\so..\microsoft\windows\current-Version\explorer\RecentDocs 保存最近使用的十五个文档的快捷方式(删除掉可解决文档名称重复的毛病),清除文档菜单时将被清空。

5.HKEY_USERS\.default\software\microsoft\windows\currentVersion\lets 保存Windows应用程序的记录数据。

6.HKEY_USERS\.default\software\microsoft\windows\currentVersion\run保存由用户设定的计算机启动时运行程序的名称,其图标显示在任务条右侧。

注册表通过键和子键来管理各种信息。但是,注册表中的所有信息是以各种形式的键值项数据保存下来。在注册表编辑器右窗格中,保存的都是键值项数据。这些键值项数据可分为如下三种类型:

1.字符串值

在注册表中,字符串值一般用来表示文件的描述、硬件的标识等。通常它由字母和数字组成,最大长度不能超过255个字符。在图9所示中,“D:\pwin98\trident”即为键值名“a”的键值,它是一种字符串值类型的。同样地,“ba”也为键值名“MRUList”的键值。通过键值名、键值就可以组成一种键值项数据,这就相当于Win.ini、Ssyt-em.ini文件中小节下的设置行。其实,使用注册表编辑器将这些键值项数据导出后,其形式与INI文件中的设置行完全相同。

2.二进制值

在注册表中,二进制值是没有长度限制的,可以是任意个字节长。在注册表编辑器中,二进制以十六进制的方式显示出来,如图10所示。 在图10中,键值名Wizard的键值“80 00 00 00”就是一个二进制。在如图11所示的“编辑二进制值”对话框时,在编辑框的左边输入十六进制数时,其右边将会显示相应的ASCII码。

3.DWORD值

DWORD值是一个32位(4个字节,即双字)长度的数值。在注册表编辑器中,您将发现系统会以十六进制的方式显示DWORD值,如图12所示。在编辑DWORD数值时,可以选择用十进制还是16进制的方式进行输入。

我想知道 注册表里面个个主项的意识 比如HKEY-CLASSES-ROOT是什么意识

1. 打开记事本写入下面的代码:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\runas]

@="管理员取得所有权"

"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\*\shell\runas\command]

@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

[HKEY_CLASSES_ROOT\exefile\shell\runas2]

@="管理员取得所有权"

"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\exefile\shell\runas2\command]

@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"

[HKEY_CLASSES_ROOT\Directory\shell\runas]

@="管理员取得所有权"

"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\shell\runas\command]

@="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"

"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"

2. 保存为.reg的格式,或者直接下载管理员取得所有权,然后与注册表合并.

3. 最后你会发现在你右击文件或文件夹的时候右击菜单多了一项"管理员取得所有权",好了,你再在你要打开的文件夹那里右击之后选择"管理员取得所有权"你就会发现以后就很顺畅的打开了,也不会有任何的提示了.

安装OFFICE2010时提示错误1406,无法写入注册表

注册表是Windows系统存储关于计算机配置信息的数据库,包括了系统运行时需要调用的运行方式的设置。Windows注册表中包括的项目有:每个用户的配置文件、计算机上安装的程序和每个程序可以创建的文档类型、文件夹和程序图标的属性设置、系统中的硬件、正在使用的端口等。

注册表按层次结构来组织,由项、子项、配置单元和值项组成。注册表中包括如下各项:

●HKEY_CURRENT_USER:包含当前登录用户的配置信息的根目录。用户文件夹、屏幕颜色和“控制面板”设置存储在此处。该信息被称为用户配置文件。

●HKEY_USERS:包含计算机上所有用户的配置文件的根目录。HKEY_CURRENT_USER是HKEY_USERS的子项。

●HKEY_LOCAL_MACHINE:包含针对该计算机(对于任何用户)的配置信息。

●HKEY_CLASSES_ROOT:是HKEY_LOCAL_MACHINE\Software的子项。此处存储的信息可以确保当使用Windows管理器打开文件时,将使用正确的应用程序打开对应的文件类型。

●HKEY_CURRENT_CONFIG:包含本地计算机在系统启动时所用的硬件配置文件信息。

对于注册表的修改,需要使用专门的编辑器完成,在Windows中为我们提供了这个工具。而在Win2000中微软新提供了一个针对多用户系统的注册表编辑器,这就是我们本期将主要介绍的内容。

在此要特别强调一点:一般来讲注册表不须要用户自己修改,因为其中包括了Windows启动和运行所必须的全部配置,错误的设置将会导致应用程序无法运行、系统出错,直至系统崩溃或无法启动。如果需要对注册表进行编辑,务必事先进行注册表项目备份!

Win2000中的注册表编辑器

在Win2000中,系统提供了两个注册表编辑工具,一个是从Win9x延续下来的,一个是新版本操作系统提供的。在此我们要介绍的是后者。

1.程序的启动

单击系统开始按钮,在关联菜单中选择“运行”命令,激活相关界面。在其中的文本框中输入“regedt32”,并击回车键确定,即可启动程序,其界面形式如图1所示。

2.向注册表中添加新的项或子项

如果需要将一些系统运行设置添加到系统注册表中,而这些信息又不是以*.reg格式提供的,此时只能使用注册表编辑器完成,具体步骤如下:

启动程序,在程序左边的树形列表窗口中选择将在其下添加新项的项或子项。单击程序界面菜单条中的“编辑”项,并从关联的下拉菜单中选择“添加项”命令,此时会出现如图2所示界面。

在图2所示窗口中的“项名称”文本框中输入需要添加的新项名称,对于指定类别,可根据自己的需要设置,当然如果不添加也可以。最后单击确定按钮,返回程序界面即可。

如果需要在HKEY_USERS或HKEY_LOCAL_MACHINE主项中添加新的内容,方法有所不同,此时“编辑”菜单中的“添加项”命令是不允许使用的。正确的添加方法是:单击程序界面菜单条“文件”项下拉菜单中的“加载配置单元”命令,程序会给出一个列表框,在其中选择需要加载的对象,之后单击“打开”按钮,程序会给出“加载配置单元”对话框,在其中输入新建项目名称,之后单击确定按钮即可。在此需要说明的是,加载配置单元主要用于在不同的机器中传递注册表配置,对于配置相同的机器,这样可以节省系统配置时间。

3.给注册表的值项赋值

所谓值项,就是注册表中的含数据字符串的子项,这个设置以字符串方式体现,常见的设置取值包括二进制数值和字符串明码以及DWORD(双字节)值方式。给值项赋值的具体步骤是:首先在注册表编辑器界面左边窗口中选择需要赋值的项或子项,从程序界面菜单条“编辑”项下拉菜单中选择“添加数值”命令,此时会出现如图3所示界面。在其中的“数值名称”文本框中输入需要创建的值项(子项)名,在“数据类型”下拉文本框中选择赋值类型,其中各列表项的含义为:

●REG_BINARY:二进制值;

●REG_DWORD:DWORD值;

●REG_EXPAND_SZ:可扩展字符串;

●REG_MULTI_SZ:多重字符串;

●REG_SZ:数据字符串。

根据自己的需要选择,之后,单击确定按钮。注意,选择的赋值类型不同,程序会给出关联的设置界面,在其中设置具体取值,之后进行确定就可以了。

如果需要修改或编辑值项的赋值,可使用鼠标双击程序界面右边窗口中的赋值列表项,程序会给出相应的赋值编辑器,在其中进行编辑或修改即可,非常简单。

4.以关键字方式查找

由于注册表中包括的项目非常多,当需要从中定位自己需要的项或子项时,使用查找功能是非常必要的。该项功能的具体用法如下:首先在程序界面中选择需要扫描的项或子项所在窗口,单击界面菜单条“察看”项下拉菜单中的“搜索项”命令,此时会出现如图4所示界面。在“查找内容”文本框中输入需要查找的内容关键字,并选择相应的扫描控制方式,之后,单击“查找下一个”按钮确定即可。

5.删除注册表中无用的子项或值项

虽然现在的应用程序都设计有自动卸载功能,但是多数程序并不能完全将自己在注册表中添加的项目删除,这也会导致注册表日益增大,时间长了会导致系统运行变慢等不良现象发生。如果你大致了解注册表的组成,可以将这些无用的设置从注册表中删除,当然这项操作具有一定的风险,使用前应该备份注册表数据文件。对于删除注册表中的项目,非常简单:首先在程序界面中找到需要删除项目所在的主项窗口,然后定位需要删除的值项,一般对于软件注册项都包括在HKEY_CURRENT_USER项下的Software子项中。单击程序界面菜单条“编辑”项下拉菜单中的“删除”命令或者是直接按下“Delete”键,程序会给出删除确认对话框,单击“Yes”按钮确认即可。

此外,对于配置单元项,是不能直接删除的,须要按照如下方法操作:选择需要删除的配置单元列表项,之后从程序界面“文件”下拉菜单中选择“卸载配置单元”命令。

6.保存注册表项目

对于保存注册表项目,可按以下步骤操作:首先在程序界面中选择需要保存的注册表项目对象,之后从界面“文件”下拉菜单中选择“保存项”命令,程序会给出相应的对话框,在其中设置保存文件的文件名、保存路径,对于文件类型,应设置为“所有文件”,之后,单击界面中的“保存”按钮即可。由于Win2000的注册表编辑器根据不同的项给出了单独的窗口,所以,对于完整的保存注册表,须要依次保存相应的项。

7.还原注册表项目

对于还原注册表项目,我们可以理解为恢复注册表项目的备份设置,或者是还原注册表项目。使用该项功能的前提是以前我们对注册表项目进行了备份。该项功能的使用方法非常简单:首先选择需要还原的项目所在的项显示窗口,单击程序界面“文件”项下拉菜单中的“还原”命令,程序会给出一个对话框,在其中的文件列表窗口中选择需要还原的文件名,之后单击“打开”按钮确定即可。

在此要提醒的是,对于项目还原操作,将使用备份的注册表项完全替代当前注册表中原始位置的全部配置,而且会将当前注册表中需要还原位置的全部配置删除。

8.注册表的打开与关闭

当注册表编辑器启动后,程序会自动打开本机的注册表,以供编辑。不过作为Win2000提供的工具,程序提供了关于编辑远程计算机注册表功能,不过我们可以打开的项目限制为HKEY_USERS和HKEY_LOCAL_MACHINE。对于本地注册表窗口的关闭,可从“文件”项下拉菜单中选择“关闭”命令即可。

对于打开远端计算机的注册表,可以从“文件”项下拉菜单中选择“选择计算机”命令,在其中的计算机列表框中选择需要访问的机器名称,之后单击打开按钮确定即可。

9.设置注册表项的权限

设置权限是有效的保护注册表项目的重要方法,使用此项功能可以指定能打开该项的用户和组。以下给出具体设置步骤:首先在程序界面窗口中选择需要指定权限的项,单击界面“安全”项下拉菜单,从中选择“权限”命令,在“名称”列表框中选择需要设置权限的用户或组,如果暂时还没有添加,可单击“添加”按钮,在关联的“选择用户、计算机或组”设置界面中选择需要添加的对象。在界面中的“权限”项列表框中设置允许当前选择对象的使用权限,其中包括只读和完全控制(读写)。如果要给子项指派权限,并希望指派给父项的可继承权限能够应用于子项,请选中“允许将来自父系的可继承权限传播给该对象”复选框。此外,如果单击界面中的“高级”按钮,程序会给出针对当前授权注册表项访问控制设置,其中包括了更加严密的授权设置,如是否允许查询数值、设置数值、创建子项、枚举子项、通知、创建链接、删除、写入DAC、写入所有者、读取控制等,根据自己的需要选择即可。

回答者:gaoyd - 经理 四级 6-25 15:48

注册表是windows的命根,里面储存着大量的系统信息,是一个庞大的数据库。注册表里面所有的信息平时都是由windows操作系统自主管理的,也可以通过软件或手工修改。注册表里面有很多系统的重要信息,包括外设,驱动程序,软件,用户记录等等,注册表在很大程度上“指挥”电脑怎样工作。注册表有很大的用处,功能非常强大,是windows的核心。通过修改注册表,我们可以对系统进行限制、优化等等

回答者:_十字路口_ - 高级经理 六级 6-25 15:51

注册表是用来对windows操作系统进行配置的一个工具.通过它,可以对操作系统及应用软件进行优化,可以自己设置windows的使用权限,可以解决硬件及网络设置不当带来的故障甚至可以改造自己的操作系统.

注册表编辑器(Regedit.exe)的工具,它可以用来查看和维护注册表。

作用:在系统中注册表是一个记录32位驱动的设置和位置的数据库。当操作系统需要存取硬件设备,它使用驱动程序,甚至设备是一个BIOS支持的设备。

特点:注册表允许对硬件、系统参数、应用程序和设备驱动程序进行跟踪配置,这使得修改某些设置后不用重新启动成为可能。

注册表中控制键、段名、键名是什么意思?

1).当出现出现这种情况时,在cmd命令窗口输入以下命令,enter后刷新一下即可。

secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose

但是在一般情况下这种方法很难奏效,本人试过也没什么用处,所以推荐用下面一种方法。

2. 到下面的link 下载msi文件

://.microsoft/download/en/confirmation.aspx?id=23510按默认路径安装。然后把安装路径(C:\Program Files (x86)\Windows Resource Kits\Tools 或 C:\Program Files \Windows Resource Kits\Tools)下的文件SUBINACL.EXE 拷贝到 /Windows/System 32 文件夹下。 最后把下面的内容拷贝到记事本里,把txt后缀改为bat

subinacl /subkeyreg HKEY_LOCAL_MACHINE /setowner=administrators

subinacl /subkeyreg HKEY_CURRENT_USER /setowner=administrators

subinacl /subkeyreg HKEY_CLASSES_ROOT /setowner=administrators

subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f /grant=system=f

subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f /grant=system=f

subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f /grant=system=f

cls

Exit

然后以管理员的身份运行上面的bat文件。 这样,应该没有问题安装你的office 了

office安装不能写入注册表 错误1406 安装程序无法将值clview.exe无法写入注册表 原创也没用啊!

控制键

在注册表编辑器中注册表项是用控制键来显示或者编辑的。控制键使得找到和编辑信息项组更容易。因此,注册表使用这些条目。下面是六个控制键

HKEY_LOCAL_MACHINE

HKEY_CLASSES_ROOT

HKEY_CURRENT_CONFIG

HKEY_DYN_DATA

HKEY_USERS

HKEY_CURRENT_USER

Winnt和Win95的注册表并不兼容。从Win95向Winnt升级需要你重新安装32位应用程序,重新在桌面上创建图标,并重新建立用户环境。

通过控制键可以比较容易编辑注册表。虽然它们显示和编辑好象独立的键,其实HKEY_CLASSES_ROOT 和HKEY_CURRENT_CONFIG是 HKEY_LOCAL_MACHINE的一部分。HKEY_CURRENT_USER是HKEY_USERS的一部分。

HKEY_LOCAL_MACHINE包含了HKEY_CLASSES_ROOT和HKEY_CURRENT_CONFIG的所有内容。每次计算机启动时,HKEY_CURRENT_CONFIG和HKEY_CLASSES_ROOT的信息被映射用以查看和编辑。

HKEY_CLASSES_ROOT其实就是HKEY_LOCAL_MACHINE\SOFTWARE\Classes,但是在HKEY_CLASSES_ROOT窗编辑相对来说显得更容易和有条理。

HKEY_USERS保存着缺省用户信息和当前登陆用户信息。当一个域成员计算机启动并且一个用户登陆,域控制器自动将信息发送到HKEY_CURRENT_USER里,而且HKEY_CURRENT_USER信息被映射到系统内存中。其他用户的信息并不发送到系统,而是记录在域控制器里。

键和子键

数据被分割成多层次的键和子键,建立分层次(就象Exploer一样)结构更易于编辑。每个键有成组的信息而且根据在其中的数据类型被命名。每个键在它的文件夹图标上都有一个加号(+)标志子键说明在它下面还有更多内容的东西。当点开它的时候,文件夹的加号标志被替换成一个减号(-)标志,然后显示出下一级的子键。

所有软件,硬件,windows工作的设置都存放在HKEY_LOCAL_MACHINE。所有安全策略,用户权限和共享信息也包括在这个键中。用户权限,安全策略,共享信息可以通过Windows NT域用户管理器,Explorer和Win95中控制面板来设置。

HKEY_CLASSES_ROOT

HKEY_CLASSES_ROOT包含了所有应用程序运行时必需的信息:

在文件和应用程序之间所有的扩展名和关联;

所有的驱动程序名称;

类的ID数字(所要存取项的名字用数字来代替);

DDE和OLE的信息;

用于应用程序和文件的图标;

HKEY_CURRENT_CONFIG.

HKEY_CURRENT_CONFIG是在HKEY_LOCAL_MACHINE中当前硬件配置信息的映射。如果系统只有一个配置文件,也就是原始配置,数据将一直在同样的地方。在控制面板|系统|硬件配置文件|创建一个额外的配置使额外配置信息放入HKEY_LOCAL_MACHINE。当Win95中存在多个配置文件时,当每次计算机启动时将给出一个提示让你选择一个配置文件。在Winnt中,在启动时你可以按空格键来选择上次正常启动时硬件配置文件。根据硬件配置文件选择的不同,特定的信息被映射到HKEY_CURRENT_CONFIG。

HKEY_DYN_DATA

HKEY_DYN_DATA和其他的注册表控制键不同,因为实际上它并不被写入硬盘驱动器中。Win95的一个优点是,在系统启动时HKEY_DYN_DATA这个控制键储存收集到的即插即用信息并配置它们。它保存在内存中,Win95用它来控制硬件。因为是在内存中,所以它不从硬盘中读取,每次当你启动计算机时,配置都有可能会不一样。在启动时Win95必须计算超过1600种可能的配置。所以,如果系统改变既定的设置而没有报告给Win95那么潜在的问题就可能发生。系统大多数时间工作良好,但是并非一直如此。

HKEY_USERS

HKEY_USERS仅包含了缺省用户设置和登陆用户的信息。虽然它包含了所有独立用户的设置,但在用户未登陆网络时用户的设置是不可用的。这些设置告诉系统哪些图标会被使用,什么组可用,哪个开始菜单可用,哪些颜色和字体可用,和控制面板上什么选项和设置可用。

HKEY_CURRENT_USER

用来保存当前用户和缺省用户的信息,HKEY_CURRENT_USER仅映射当前登陆用户的信息。

各主键的简单介绍

HKEY_LOCAL_MACHINE

HKEY_LOCAL_MACHINE是一个显示控制系统和软件的处理键。HKLM键保存着计算机的系统信息。它包括网络和硬件上所有的软件设置。(比如文件的位置,注册和未注册的状态,版本号等等)这些设置和用户无关,因为这些设置是针对使用这个系统的所有用户的。

HKEY_LOCAL_MACHINE\AppEvents

为了以后在瘦客户机上运行客户机/服务器这样的应用程序,在Win95/98中AppEvents键是空的。应用程序实际上都驻留网络服务器上,这些键会保存部分指针。

HKEY_LOCAL_MACHINE\Config

这个键保存着你计算机上所有不同的硬件设置(这些从控制面板的系统属性中硬件配置文件中可以创建)。这些配置在启动时通常被复制到HKCC。每个配置会被用一个键(比如0001或者0002等等)来保存,每个都是一个独立的配置。如果你只有一个单一的配置,那就只会有0001这个键

HKEY_LOCAL_MACHINE\Config\0001\Display

这个键表示显示的设置,如荧屏字体,窗体大小,窗体位置和分辨率等

一个小技巧:当设置了计算机不支持的大分辨率导致Windows不能启动时(黑屏),可以修改分辨率来解决。进入安全模式,运行regedit.exe,在这个键的Resolution键值中把数据值修改为640,480或者800,600这样的低分辨率,然后重新启动计算机即可。

HKEY_LOCAL_MACHINE\Config\0001\System

这个键保存着系统里打印机的信息

HKEY_LOCAL_MACHINE\Config\0001\System\CurrentControlSet\Control\Print\Printers

在这个键下面,有一个键是为系统上每一个打印机设置的,通过控制面板添加和删除打印机会调整这个列表

HKEY_LOCAL_MACHINE\Enum

Enum键包含启动时发现的硬件设备和那些既插即用卡的信息。Win95使用总线列举在启动时通过不同的.ini文件来检测硬件信息。那些在启动时被安装的和被检测到的硬件会显示在这里。子键包括BIOS, ESDI, FLOP, HTREE, ISAPNP, Monitor, Network, Root, SCSI, 和 VIRTUAL。子键名表示它们各自的硬件设备信息。

HKEY_LOCAL_MACHINE\Enum\BIOS

BIOS键保存着系统中所有即插即用设备的信息。它们用一套代码数列出,包括每一个键的详细说明,举例,*pnp0400是并行口LPT1的键。如果LPT1并不具备即插即用功能,它就会别列入到Enum下的Root键中

HKEY_LOCAL_MACHINE\Enum\Root

Root键包括所有非即插即用设备的信息。在这里,我们可以迅速断定哪些设备是即插即用,那些不是。比如SCSI适配器,这个设备必须符合Win95中一个键名为ForcedConfig的硬件设置,这个不会改变。

HKEY_LOCAL_MACHINE\Enum\Network

win95的网络功能在这个键有详细说明,子键包括了每个已经安装的主要的服务和协议。

HKEY_LOCAL_MACHINE\HARDWARE

hardware子键包括了两个多层的子键:DESCRIPTION键,它包含了中央处理器和一个浮点处理器的信息。还有一个设备映射键,它下面的串行键列出你所有的com端口。这个hardware键仅保存超级终端程序的信息,及数学处理器和串行口。

HKEY_LOCAL_MACHINE\Network

这个键仅保存网络登陆信息。所有网络服务细节都保存在HKEY_LOCAL_MACHINE\Enum\Network这个键中。这个键有一个子键,logon,包括了lmlogon(本地机器登陆?0=false 1=true)的值,logonvalidated(必须登陆验证),策略处理,主登陆方式(Windows登陆 ,微软网络客户方式等),用户名和用户配置。

HKEY_LOCAL_MACHINE\SECURITY

security 有两个子键,第一个是存取(它最终致使一个远程键列出网络安全,存取权限等)和提供(包括列出网络地址和地址服务器),这个键被保留用在以后使用高级安全功能和NT兼容性上

HKEY_LOCAL_MACHINE\SOFTWARE

这个键列出了所有已安装的32位软件和程序的.ini文件。它包括了变化,依靠软件安装。那些程序的控制功能在这里的子键中列出。多数子键简单的列出了安装软件的版本号。

请问注册表错误是怎么产生的啊?

很可能是你之前安装的版本没有卸载干净~!按照下面的方法,搞不定再找我(跟楼上的大部分差不多):注意,以下操作都是在安装之前进行!

1:打开运行win+R ,运行命令secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose 注意后面的一段一起复制。

2:1.下载并安装SubInACL 下载地址:1.下载并安装SubInACL

下载地址:://.microsoft/downloads/details.aspx?FamilyId=E8BA3E56-D8FE-4A91-93CF-ED6985E3927B&;

3:在C:\Program Files\Windows Resource Kits\Tools文件夹下创建一个新的记事本,并粘贴在它下面的代码;

subinacl /subkeyreg HKEY_LOCAL_MACHINE /setowner=administrators

subinacl /subkeyreg HKEY_CURRENT_USER /setowner=administrators

subinacl /subkeyreg HKEY_CLASSES_ROOT /setowner=administrators

subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f /grant=system=f

subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f /grant=system=f

subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f /grant=system=f

cls

Exit

重命名的记事本重置,完整的名称将成为“reset.cmd”,作为管理员运行这个文件。

补充,你的是XP系统,命名的时候先显示后缀,把txt改为cmd 名称为reset 这一点比较重要

这个过程大概要15到20分钟左右,所以要耐心! 搞定后再安装就可以了!

以上东西经过本人测试过的,你放心使用!有问题再联系!

注册表问题

我们生活在一个信息快速传递的年代,“电脑”则扮演着这个年代中极为重要的角色,实际上它几乎已经成为一个标志性的单词。可是回头看看我们手头正在使用的电脑,不少人多多少少就会有一些疑问:它的运行速度真的和这个节奏快速的年代相配吗?为什么新装的电脑会越跑越慢?为什么格式化再重装的系统会越用越不稳定?能不能让一个新安装的系统跑得更快?有没有办法打造一个适合自己的精简式系统……在不改变硬件配置的前提下,这类问题其实非常有解决的必要,在这里笔者给大家交出了一份自己的答卷,但愿它能在一定程度上满足你优化系统的需要。 在行文方面,笔者一方面考虑到Win9X/2000操作系统已发布多年,相应的优化技巧媒体报道非常多,大家应当是比较熟悉,即使是不熟悉也能轻易找到这方面较集中的信息;另一方面考虑WinXP作为最新一代主流的微软桌面操作系统,在视觉上或功能上都强过历代前辈,但随之而来的消耗及占用过大的问题也困扰了不少用户,因此本文撰写过程中,将以WinXP为核心介绍优化方法,同时在每一部分之后对Win98/2000操作系统在此部分的不同作比较介绍;如果在WinXP优化方法分类中对Win98/2000部分有遗漏,将在分类介绍后集中整理。预备篇 并不是所有的机器都可以享受到WinXP的快捷,如果是新安装WinXP系统,那么你的机器按照微软的官方标准必须达到以下标准: CPU频率为300MHz或更高 推荐使用128MB内存或更高 可用硬盘空间至少1.5GB以上 显示器必须支持800×600分辨率以上 当然微软的话向来是打折扣的,上述配置只能保证WinXP能够勉强运行起来,实际上如果你的CPU和内存配置刚刚够格的话,还是建议你打消升级的念头。笔者推荐至少使用256MB内存,PⅢ600MHz(赛扬800MHz)以上CPU的用户才可试着考虑一下是否需要升级,当然如果你想系统及其上运行的软件能发挥大部分性能,建议将内存提至384MB,CPU提至赛扬1GHz(或PⅢ800MHz)以上,当然硬盘性能也是一个考虑因素。另外,微软所说的1.5GB硬盘空间是指一个全新的没有加装任何应用软件的WinXP所占用的空间,实际上随着后续的使用,1.5GB是绝对不够的。所以,建议安装WinXP之前系统分区内至少留下4GB左右的硬盘空间,当然,如果你像“可怜的笔者”一样,硬盘小到只有2.7GB左右的系统分区,就一定要按照下面的操作方法将应用软件和所有的TEMP文件夹全部移动到别的分区上。 对于应用软件的安装,无论WinXP还是Win98/2000,都建议安装在非系统分区内统一管理,这样可以大大增加系统分区的稳定性。很多用户常常需要大量地更新或更换各种应用软件,还有些高级用户频繁地试用一些不稳定的应用软件。这些都很容易使得系统分区内产生大量的文件碎片,也不利于系统分区的备份恢复工作。另外,大部分用户的系统分区都相对较小,应付WinXP这样日渐庞大的身躯已经非常吃紧了,所以不建议在同一分区安装操作系统和所有的应用软件。 对Win98/2000的补充说明: 与WinXP相比之下,Win98/2000对于系统的要求可谓小儿科。尤其是Win98,绝大部分奔腾以上级别的电脑都可以轻松运行。至于Win2000,其实最适合在许多中年机器的操作系统上运行了。这里的中年,指的是主频500MHz~800MHz,内存为64MB~256MB的机器。这种机器现在运行WinXP显得有点先天不足,那么Win2000就是不二选择。不要以为Win2000除了稳定性外一无是处,其实,几乎全部的软件都可很好地运行在Win2000下,尤其在打上SP3补丁以后,Win2000的安全和可操作性得到了最好的体现。操作篇 一、给系统分区瘦身 1.清理垃圾文件和垃圾键值 所谓垃圾文件/垃圾键值是指系统或软件在安装运行过程中产生的,在删除或结束运行后又没有被删除的文件/注册表信息。这些文件的清理绝大多数是通过某些专用优化软件进行的,除非你想累死自己:)。这里推荐的软件有超级兔子魔法设置和Windows优化大师。这两个软件设计得都非常人性化,操作相当简单,以Windows优化大师为例,在这里只需选择系统清理维护中的注册信息清理以及垃圾文件清理即可(图1)。 有一些软件正常卸载后会留下自己的安装目录和一些注册表键值,这些部分有可能对软件产生优化作用,在扫描时会忽略不计。请确证其已被删除,然后找到那些软件的安装目录,将其删除;之后点击“开始”→“运行”,键入“Regedit”并回车进入注册表编辑器,选择菜单“编辑”→“查找”,输入软件名字或公司名字,找到那些已经没有用的键值(图2),按Del键删除即可。 2.删除系统强行安装附件 有一些系统自带的附件并不是自己需要的,但即使是通过控制面板的“添加/删除文件”也无法删除。这时可以用文本编辑器(如记事本)打开“Windows\inf\sysoc.inf”,用“查找/替换”功能,在查找框中输入“,hide,”(两个英文逗号之间紧跟着“hide”),将“替换为”框设为“,,”(图3),选择全部替换之后存盘退出。再进入“添加/删除程序”,就会看见“添加/删除Windows组件”中多出了好几个选项,这样就可将那些没用的附件删除了。 3.关闭系统还原及系统休眠 系统还原的确是较好的系统安全方案,可它所占用的和硬盘空间却比较大。如果你不是三天两头地装一些劣质软件,而且硬件也并不富裕,笔者建议可视情况将其关闭。用鼠标右键单击“我的电脑”,选择“属性”,找到“系统还原”选项,在“在所有驱动上关闭系统还原”选项上打钩即可(图4)。如果你实在不放心,可选择只关闭所有非系统盘的系统监视,方法是选定某个盘符后点击“设置”按钮,在弹出的对话框中选择“关闭这个驱动器上的‘系统还原’”(图5)并确定。 系统休眠是一项默认的电源管理策略,可在系统长时间不使用时让其休眠以节省电力,但同时它也是一项很占硬盘的功能,因为会在系统分区上占用和物理内存相等的磁盘空间。笔者建议长时间不使用电脑完全可以关闭总电源,没有必要使用休眠功能:进入控制面板,选择电源选项,进入“休眠”页,将“启用休眠”钩除即可(图6)。 4.对Win98/2000的补充说明 Win98/2000下的垃圾文件/键值的清除和WinXP一样用优化软件处理比较方便,没有用的Windows附件也可使用相同的删除方法。系统休眠及系统还原是WinXP的新功能,在98和2000下无需修改。 二、系统盘文件的有序化 1.分区格式推荐及磁盘整理 对新安装的电脑,根据自己的情况选择分区格式是很必要的。这里先简略说一下NTFS格式。NTFS格式是NT内核操作系统支持的一种比FAT32更为先进和安全的磁盘格式。与FAT32相比,NTFS中簇的大小不依赖于磁盘或分区的大小,簇尺寸的缩小不但可以降低磁盘空间的浪费,还能够减少文件碎片;另一方面,NTFS支持文件加密管理功能,可为用户提供更高层次的安全保证。所以笔者强烈推荐使用WinXP的用户将分区改为NTFS格式。但NTFS格式并不能被Win98识别,除非使用第三方软件。所以如果用户想使分区能够在Win98和WinXP/2000通用,可将后者的系统分区格式化为NTFS,而其它分区仍视情况保留为FAT32格式。 电脑使用一段时间后,不可避免会产生文件碎片,因此要视情况看是否需要整理一次磁盘。所谓磁盘整理就是尽量使一个文件被分配到连续的簇上(参见插文)。可直接通过WinXP的磁盘管理工具来检测或整理磁盘,不过首先需要注意的是,在进行磁盘整理前待整理分区至少要有7%以上的未用空间。此工具的具体使用方法是:点击“开始”菜单,依次找到“所有程序”→“附件”→“系统工具”→“磁盘碎片整理程序”,在弹出的主界面中先选择要整理的磁盘,然后点击“分析”,电脑会对选定盘进行分析,并将分析结果显示出来(图7),之后根据建议选择是否进行碎片整理即可。要说明的是,在优化系统时,这一步应当放在磁盘文件相关处理的最后一步(包括第一大步的瘦身和下面的调节文件写入),以避免重复劳动。 2.转移系统区写入文件的保存位置 为了减少系统分区中的文件碎片,以加快对系统文件的访问,优化系统时应尽量调节少向系统盘写入文件,我们可将系统区部分写入文件的保存位置转移到其他分区上,这里可改变位置的包括虚拟内存页面文件、临时文件夹和“我的文档”等。 先来看虚拟内存页面文件如何转移。右键单击“我的电脑”,选择“属性”并进入系统属性中的“高级”页面,点击“性能”框中的设置,弹出性能选项的窗口,进入“高级”页面并点击其上的虚拟内存更改按钮(图8),选择WinXP的系统区即可看到系统默认的选择。这里并不推荐自定义虚拟内存页面文件大小,因为WinXP在这方面的管理已比较完善。但可将其移至其他分区,一方面可防止因其大小改变而引起系统分区磁盘碎片增多,另外可空出更多的系统分区空间。记下图8上的系统的默认设置,然后将系统分区上的设置变为“无页面文件”,点击转移目的分区,选择“自定义大小”,并填入刚才记录下来的数值即可。 临时文件分为IE临时文件、系统临时文件和刻录临时文件。由于这三者特别是前两个目录下的文件是所有文件中删改频率最高的,而且都是残留的垃圾文件,极容易产生磁盘碎片。所以将它们转移到别的分区是最好的办法。打开控制面板中的Internet选项,在“常规”页面的的Internet临时文件中点击“设置”,在弹出窗口点击“移动文件夹”(图9),再自己设置想要移动到的分区目录就可以了,当然这里也可自行设置IE临时文件夹的大小。右键单击“我的电脑”,选择“属性”,进入系统属性中的“高级”页面,选择环境变量,将变量中的“TMP”和“TEMP”值改为其他分区中的某个目录即可。如果使用了WinXP的刻录功能,系统分区还会保留有刻录临时文件,进入管理器,选择刻录机盘符并单击鼠标右键菜单的“属性”项,在“录制”标签下可将此临时文件夹安置于其他驱动器(图10)。 下一个需要处理的是“我的文档”,其实这也是加快操作的办法,一般人都会单独划分出一个盘存放自己专用的文档,而很多软件默认的保存路径都是该用户的“我的文档”文件夹,每次都需要来回切换路径还不如一次搞定:鼠标右键点击“我的文档”,在属性设置项中可将“目标文件夹”默认的保存路径修改至其他目录(图11)。 3.对Win98/2000的补充说明 这一部分Win2000和WinXP除了刻录临时文件夹以外,没有太大区别。Win98方面,文件格式方面只有选FAT32了,现在使用FAT16格式的用户相当少了,如果你恰好如此,可用“系统工具”中的“磁盘转换器”将其转为FAT32。关于磁盘碎片整理工具的选用,Win98和WinXP也有着本质区别。用过Win98自带的磁盘碎片整理工具的朋友一定对它的速度不敢恭维吧,所以这里提供两种方法,一是选用第三方的磁盘碎片整理工具,比如Vopt就很不错(图12);另一个方法是改造一个Win98自带的碎片整理工具:在整理之前点击“设置”,将“重新安排程序文件……”一项勾除并确定(图13),这样设置后再整理速度就会快很多。至于TEMP目录的设置,Win98也有着不同的方法,这里要说明的是,通过在Autoexec.bat中加载“settemp=…”等语句来实现,那只能控制DOS程序的临时写入文件夹,Windows程序的Temp文件夹需要通过修改注册表移动其位置。打开注册表编辑器,依次展开HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\临时文件,将其下的Folder键值改为你所希望转移位置,重启系统即可。三、给系统瘦身 1.随系统启动程序的查找及取消 WinXP中改进了Win98下的MSConfig程序,将所有地方(开始菜单中的“启动”项目、注册表中指示的自动启动程序等)都集中到了一处,可一起修改。只要在开始菜单的运行对话框中输入“msconfig”并回车即可进入系统配置实用程序,进入“启动”页面,这里可以到看各种随机启动的程序(图14),仔细检查有没有你想关闭的,只要勾除其前面的复选框即可。需要说明的是,不少软件自身就带有去除自启动选项,如果你在这里关闭有时只要运行该软件又会让其自启动,因此要细心去找软件的自带设置。 2.关掉不必要的服务 WinXP在启动时会自动加载一些常用服务,可是有很多对于平常用户来说并不用到。所以我们可以手动控制这些服务的加载与否来达到提升速度的目的。在“控制面板”中选择“管理工具”→“服务”,打开后看到服务列表(图15),有些服务已经启动,有些则没有。右键单击要配置的服务,然后单击“属性”。在“常规”选项上选择“自动”、“手动”或“禁用”,其中“自动”表示每次系统启动时,都自动启动该服务;“手动”表示WinXP不会自动启动该服务,而是在程序需要可选择启动;而“禁用”则表示不允许启动该服务。 有些服务是WinXP所必需的,不能关闭,否则将会造成系统崩溃。至于各项服务的功能,我们可以通过双击该服务或将鼠标指在该服务名上查看。下表中列出了可根据具体需要关闭的Windows默认安装的服务(见下表)。 3.性能与外观的均衡 右键单击“我的电脑”,选择“属性”,进入系统属性中的“高级”页,点击“性能”框中的设置,弹出性能选项的窗口(图16)。视觉效果选项因人而异,你大可自己尝试一下各种区别。视觉效果好的话系统性能就相对降低。至于桌面色深是32位还是16位其实对系统性能影响不大,因为90%以上的显卡在运行32位真彩时桌面环境的速度和16位时几乎一样。 4.右键菜单减肥 右键菜单并不是一成不变的,一些没用的命令应当删除。而有时我们正常卸载某个应用程序后,在右键菜单中仍会留下一些不再需要的项目,也同样需要将其删除。这些项目一般都存放在注册表管理器下的“HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers”;如果是只对文件夹有效的项目,则存放在“HKEY_CLASSES_ROOT\Directory\shell”、“HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers”、“HKEY_CLASSES_ROOT\Folder\shell”和“HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers”中,只需进入注册表编辑器中找到相应位置并删除就可。系统使用时间过长还会使得右键菜单中的“新建”项目过长,也可以通过修改注册表来删除不需要的新建样板,不过这里用软件来实现修改更为简单,比如用TweakUI(图17,下载参考://.onlinedown.net/soft/5728.htm" ://.onlinedown.net/soft/5728.htm)。 5.减少Log文件纪录 没有多少人会在程序出错的时候仔细查看那个错误报告选项吧,那就把它关掉。同样是系统属性里的高级菜单,单击最下面的错误报告选项打开错误报告窗口。选择第一个“禁用错误报告”,并且把子项“发生严重错误时通知我”选上即可(图18)。 还需设置调试器Dr.Watson,只需点击“开始”→“运行”,键入“drwtsn32”并回车打开调试器Dr.Watson,把除了“转储全部线程上下文”之外的全都去掉(图19)。否则一旦有程序出错,硬盘会响很久,而且会占用很多空间。如果你以前遇到过这种情况,请在系统盘中搜索user.dmp文件并删除,可能会节省几十MB的空间,这是出错程序的现场,只对程序员分析错误有用。 6.关闭自动更新 自动更新对于不能上网或难得上网的人来说根本用不到。而对于那些勤于更新的人来说又显得反应过于缓慢。关掉它是理所当然。用鼠标右键单击“我的电脑”,选择“属性”,进入“自动更新”页,去掉保持我的计算机最新的选项(图20)。如果有需要,我们大可通过“开始”→“所有程序”→“WindowsUpdate”来进行手动升级。当然如果要彻底关闭自动更新功能,请参考上文在“服务”中禁用“AutomaticUpdate”。 7.压缩文件夹功能的关闭 WinXP内置了压缩文件夹功能,可以把Zip文件当成文件夹一样浏览。不过,系统要使用部分来实现这一功能,对于装有WinZip或WinRAR的用户,禁用该功能可提升系统性能。实现方法非常简单,在开始菜单的运行框中输入“regsvr32/uzipfldr.dll”,取消zipfldr.dll的注册,之后在WinZip或WinRAR中重新设置Zip的文件关联即可。 8.对Win98/2000的补充说明 由于Win2000中去除了MSConfig命令(为此微软也遭了不少骂,在WinXP中终于悔改了),所以一些在启动项中没有列出的程序只有在注册表中直接修改。点击“开始”,选择“运行”,键入“regedit”启用注册表管理器,找到“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run”和“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run”删除下面不需要的键值(后者需拥有管理员权限)即可。 Win2000的绝大多数服务与WinXP相同,可参考表一修改。不同的几个服务请参照表二。 Win98下的系统配置程序MSConfig相对WinXP的就有些简单和不完善,但也有其特点。所谓简单和不完善,是因为有一部分自动运行的程序在注册表中有登记,这里却看不到,需要到注册表中直接删除,其特点在于Win98保留了DOS时候的Autoexec.bat和Config.sys文件,因此系统配置程序中也提供了对这两个文件进行配置的页面(图21),可根据自己的情况选用。 另外,在Win98系统属性的“系统”页中打开“性能”,再打开“高级设置栏”的“文件系统”项,在“硬盘”页内,可设置计算机的用途,选取“网络服务器”,并将“预读式预化”调整到“全部”(图22);在“软盘”页内勾除“每次启动计算机都搜索新的软盘驱动器”,这样可获得更好的系统性能。 四、深入调节系统性能 1.减少程序出错时等待时间 进入注册表编辑器,找到HKEY_CURRENT_USER\ControlPanel\Desktop,其中HungAppTimeout值表示系统要求用户手工结束被挂起任务的时间,默认值5000,减小该值可降低系统在某些特殊情形下的响应延迟。当然如果在你的系统上,某些软件的运行速度本来就很慢,把该键值设置得太小就有可能使XP误认为正在运行的软件已经被挂起。如果遇到此类情况,你可以逐步增加HungAppTimeout值,建议每次增加1000,直到XP不再把正在运行的软件误认为“停止响应”。 2.加快开始菜单显示速度 进入注册表编辑器,减小HKEY_CURRENT_USER\ControlPanel\Desktop中MenuShowDelay值。默认400,可把它设置为50。如果把这个值设置得太小,例如0,鼠标指针经过菜单时子菜单会立即显示出来,干扰用户的选择操作。 4.XPPrefetcher修改 WinXP自带了一个名为Prefetcher的服务,这个服务用于管理Windows启动时的程序初始化过程,其中指定的程序可在以后使用中快速载入。Prefetcher在默认情况下就是打开的,不过它的性能还可以进一步提升。进入注册表编辑器,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\PrefetchParameters,其中有一个键值名为EnablePrefetcher,多数情况下它的值是3。可以随便试试不同的数值,直到找到最适合自己机器的值为止。 5.打开网卡20%带宽 默认情况下,WinXP会保留一块网卡20%的带宽。如果你用的是宽带,就需要把这个限制去掉,方法如下:以管理员身份登录,在开始菜单的运行框中输入“gpedit.msc”,进入组策略配置窗口后在左边展开“计算机配置”→“管理模版”→“网络”→“QoS数据包调度程序”,之后在右边窗口双击“限制可保留带宽”,选中选项“已启用”,将“带宽限制%”的值改为0(图23)并重启。需要注意的是Home版不支持该操作,无法去除该限制。 6.加速局域网中的共享查看 如果在局域网上经常要漫长地等待窗口显示网络邻居的共享目录时,你就会发现这个优化有多重要。通常情况下,当WinXP连接到其他计算机时,会检查对方机器上所有预定的任务。我们要把这个过程去掉。进入注册表编辑器,在注册表中找到HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\RemoteComputer\NameSpace。删除其下的{D6277990-4C6A-11CF-8D87-00AA0060F5BF}键。再试一下,是不是快很多? 7.快速启动机器的诀窍 右键单击“我的电脑”,选择“属性”,打开系统属性里的高级菜单,点开“启动和故障回复”的“设置”菜单,再点击系统启动的编辑按钮,将弹出窗口中最后的multi()disk()rdisk()partition()\WINDOWS="MicrosoftWindowsXPProfessional"后的“/fastdetect”改为“/nodetect”(图24),这样可以加快不少启动时间。 8.优化主板SystemCMOS/RealTimeClock 这个优化有点烦。右键单击“我的电脑”,选择“属性”,打开系统属性里的硬件菜单,在设备管理器中找到SystemCMOS/RealTimeClock,记下它的IRQ号(图25)。然后打开注册表编辑器,找到注册表中的HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\PriorityControl。在这里建一个名为IRQ*Priority(其中*号是刚才的IRQ号)的DWORD双字节值,然后把它的值设为1,重启之后就会发现主板的性能有所提高了。 9.利用CPU的L2Cache加快整体效能 打开注册表编辑器,进入HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement,将SecondLevelDataCache的数值数据更改为与CPUL2Cache相同的十进制数值,例如:P41.6GA的L2Cache为512kB,数值数据更改为十进制数值512。 10.对Win98/2000的补充说明由于Win2000和Win98的设计缺陷,有时需要用户自己开启硬盘和光驱的DMA模式,打开方式为: 在2000下,进入控制面板的系统选项,选择“硬件”→“设备管理器”。点开“IDEATA/ATAPI控制器”,进入“主IDE通道”或“次IDE通道”,选择“高级设置”,如果Win2000没有自动检测出来,即当前传输模式非DMA时,可在相应设备的“传送模式”中选择“DMA”(图26)。在Win98下右击“我的电脑”选择“属性”,在设备管理器中选择硬盘属性,勾上DMA即可。 由于Win2000和WinXP的核心是一样的,所以大部分WinXP优化方式都适用于2000。这里就简单介绍一下关于Win98的优化。 (1)加快菜单显示速度、减少程序出错时等待时间、加速局域网中的共享查看等优化方法,其注册表操作方法都与WinXP相同,只是有时需要自己创建键值。 (2)实现软驱后台写盘 在Win98里面可以做到类似linux的后台写盘,即把写盘操作记住,在系统空闲的时候再写盘。进入注册表编辑器,展开HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\fdc键值,下面的0000键值指第一软驱,0001指第二软驱。在要修改软驱的键值下新建一个DWORD值,改名为ForeFifo,值为0。 (3)增加硬盘缓存 打开HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\FileSystem,其中NameCache是文件名缓存,32MB系统建议为800000,64MB系统建议为0F00000;PathCache是缓存路径,32MB系统建议为008000,64MB系统建议为0F0000。 (4)更快的光驱Cache 现在的光驱都已经发展到56×了,但Win98仍然只能设置到4×的光驱。进入注册表编辑器,展开HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\FileSystem\CDFS,右边能看到“CacheSize”和“Prefetch”,如果你现在是使用Win98推荐的四倍速设置,它们的值应该是“0000026B”和“000000E4”,大家根据自己的需求来修改吧,修改完后需重新启动。如果光驱常用于多媒体播放,可以把CacheSize(光驱缓存)值修改为“D6040000”或更高(不要超过最大值“AC090000”),为保证高速光驱能发挥其性能,可对Prefeth值进行修改,如8倍速为“C0010000”,16倍速为“80030000”,24倍速为“40050000”,32倍速以上为“00070000”。 WinXP优化小技巧集锦 有一些看上去算不上是速度优化,但能极大方便操作的小技巧,这里也列了出来。 1.某些文件系统报告正在使用无法删除,怎么办? 开始菜单→运行,输入“regsvr32/ushmedia.dll”并回车,之后即可执行删除操作,如要恢复这个功能,请运行:regsvr32shmedia.dll。 2.重命名系列文件 在“Windows管理器”或“我的电脑”窗口,选定要重命名的多个文件,单击“重命名”。键入新名称,此时系列中的所有文件都将使用键入的新名称按顺序命名。 3.“运行”的妙用 在“开始”菜单中的“运行”选项中输入“.”会打开“系统盘符:\DocumentsandSettings\当前登录WindowsXP的用户名的文件夹”;如果输入“...”就会打开“我的电脑”。 4.快速关机、重启 按下“Ctrl Alt Del”组合键,打开“Windows任务管理器”窗口,单击“关机”命令,在弹出菜单中按住“Ctrl”键,单击“关机”或者“重新启动”命令,这样就可以跳过保存设置画面,瞬间关机或者重启。用这种关机方式,系统不会提示你保存文件或关闭窗口,如果你还有未保存的文件,那么千万别用这种方法。 5.删除SharedDocuments文件夹 打开注册表编辑器,找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\DelegateFolders,删除子键{59031a47-3f72-44a7-89c5-5595fe6b30ee}。那么重启后你的电脑上所有的SharedDocuments文件夹都会消失掉。 6.重新安装之后不需重新激活 如果要重新安装WinXP,先完成一般的安装过程,然后把重装前的Windows\System32下Wpa.dbl文件备份复制到Windows\system32文件夹中即可。 文件碎片和TEMP文件 现代操作系统磁盘管理的前提都需要将磁盘划分成若干个最小的磁盘分配单位,在Windows操作系统上这个最小的单位被称为“簇”,每一簇代表多少磁盘容量由你在高级格式化分区时选定(或让系统视你的分区大小作出自动选择)。每个文件

C:\WINDOWS\regedit.exe 导入时,信息进入注册表的相关分支里面

注册表因为它复杂的结构和没有任何联系的CLSID键使得它可能看上去很神秘。不幸的是,微软并没有完全公开讲述关于注册表正确设置的支持信息,这样使得注册表看上去更不可琢磨。处理和编辑注册表如同“黑色艺术”一样,它在系统中的设置让用户感觉象在黑暗中摸索一样找不到感觉。这样,因为用户对这方面的缺乏了解使得注册表更多的出现故障。

Windows注册表是帮助Windows控制硬件、软件、用户环境和Windows界面的一套数据文件,注册表包含在Windows目录下两个文件system.dat和user.dat里,还有它们的备份system.da0和user.da0。通过Windows目录下的regedit.exe程序可以存取注册表数据库。在以前,在windows的更早版本(在win95以前),这些功能是靠win.ini,system.ini和其他和应用程序有关联的.ini文件来实现的.

在windows操作系统家族中,system.ini和win.ini这两个文件包含了操作系统所有的控制功能和应用程序的信息,system.ini管理计算机硬件而win.ini管理桌面和应用程序。所有驱动、字体、设置和参数会保存在.ini文件中,任何新程序都会被记录在.ini文件中。这些记录会在程序代码中被引用。因为受win.ini和system.ini文件大小的限制,程序员添加的.INI文件以用来控制更多的应用程序。举例来说,微软的Excel有一个excel.ini文件,它包含着选项、设置、缺省参数和其他关系到Excel运行正常的信息。在system.ini和win.ini中只需要指出excel.ini的路径和文件名即可。

最开始,system.ini和win.ini控制着所有windows和应用程序的特征和存取方法,它在少数的用户和少数应用程序的环境中工作的很好。随着应用程序的数量和复杂性越来越大,则需要在.ini文件中添加更多的参数项。这样下来,在一个变化的环境中,在应用程序安装到系统中后,每个人都会更改.ini文件。然而,没有一个人在删除应用程序后删除.ini文件中的相关设置,所以system.ini和win.ini这个两个文件会变的越来越大。每增加的内容会导致系统性能越来越慢。而且每次应用程序的升级都出现这样的难题:升级会增加更多的参数项但是从来不去掉旧的设置。而且还有一个明显的问题,一个.ini文件的最大尺寸是64KB。为了解决这个问题,软件商自己开始支持自己的.ini文件,然后指向特定的ini文件如win.ini和system.ini文件。这样下来多个.ini文件影响了系统正常的存取级别设置。如果一个应用程序的.ini文件和WIN.INI文件设置起冲突,究竟是谁的优先级更高呢?

注册表最初被设计为一个应用程序的数据文件相关参考文件,最后扩展成对于32位操作系统和应用程序包括了所有功能下的东东.注册表是一套控制操作系统外表和如何响应外来工作的文件。这些“”的范围从直接存取一个硬件设备到接口如何响应特定用户到应用程序如何运行等等。注册表因为它的目的和性质变的很复杂,它被设计为专门为32位应用程序工作,文件的大小被限制在大约40MB。

注册表都做些什么?

注册表是为Windows NT和Windows95中所有32位硬件/驱动和32位应用程序设计的数据文件。16位驱动在Winnt下无法工作,所以所有设备都通过注册表来控制,一般这些是通过BIOS来控制的。在Win95下,16位驱动会继续以实模式方式设备工作,它们使用system.ini来控制。16位应用程序会工作在NT或者Win95 下,它们的程序仍然会参考win.ini和system.ini文件获得信息和控制。

在没有注册表的情况下,操作系统不会获得必须的信息来运行和控制附属的设备和应用程序及正确响应用户的输入。

在系统中注册表是一个记录32位驱动的设置和位置的数据库。当操作系统需要存取硬件设备,它使用驱动程序,甚至设备是一个BIOS支持的设备。无BIOS支持设备安装时必须需要驱动,这个驱动是独立于操作系统的,但是操作系统需要知道从哪里找到它们,文件名、版本号、其他设置和信息,没有注册表对设备的记录,它们就不能被使用。

当一个用户准备运行一个应用程序,注册表提供应用程序信息给操作系统,这样应用程序可以被找到,正确数据文件的位置被规定,其他设置也都可以被使用。

注册表保存关于缺省数据和文件的位置信息、菜单、按钮条、窗口状态和其他可选项。它同样也保存了安装信息(比如说日期),安装软件的用户,软件版本号和日期,序列号等。根据安装软件的不同,它包括的信息也不同。

然而,一般来说,注册表控制所有32位应用程序和驱动,控制的方法是基于用户和计算机的,而不依赖于应用程序或驱动,每个注册表的参数项控制了一个用户的功能或者计算机功能。用户功能可能包括了桌面外观和用户目录。所以,计算机功能和安装的硬件和软件有关,对所以用户来说项都是公用的。

有些程序功能对用户有影响,有些时作用于计算机而不是为个人设置的,同样的,驱动可能是用户指定的,但在很多时候,它们在计算机中是通用的。

注册表控制用户模式的例子有:

控制面板功能;

桌面外观和图标;

网络参数;

浏览器功能性和特征;

那些功能中的某些是和用户无关的,有些是针对用户的。

计算机相关控制项基于计算机名,和登陆用户无关。控制类型的例子是安装一个应用程序,不管是哪个用户,程序的可用性和存取是不变的,然而,运行程序图标依赖于网络上登陆的用户。网络协议可用性和优先权基于计算机,但是当前连接和用户信息相关。

这里是在注册表中基与计算机控制条目的一些例子:

存取控制;

登陆确认;

文件和打印机共享;

网卡设置和协议;

系统性能和虚拟内存设置;

没有了注册表,Win95和Winnt 就不太可能存在。它们实在太复杂了,以致于用过去的.ini文件无法控制,它们的扩展能力需要几乎无限制的安装和使用应用程序,注册表实现了它。然而,注册表比.ini文件更复杂,理解它如何工作,它做什么和如何用它来做是有效管理系统的关键。

在系统中注册表控制所有32位应用程序和它们的功能及多个应用程序的交互,比如复制和粘贴,它也控制所有的硬件和驱动程序。虽然多数可以通过控制面板来安装和设置,理解注册表仍是做Winnt和Win95系统管理基本常识。

二、注册表的结构

注册表的结构

注册表是Windows程序员建造的一个复杂的信息数据库,它是多层次式的。在不同系统上注册表的基本结构相同。其中的复杂数据会在不同方式上结合,从而产生出一个绝对唯一的注册表。

计算机配置和缺省用户设置的注册表数据在Winnt中被保存在下面这五个文件中:

DEFAULT,SAM,SECURITY,SOFTWARE,SYSTEM,NTUSER.DAT。

Win95中所有系统注册信息保存在windows目录下的SYSTEM.DAT文件里。所有硬件设置和软件信息也保存在这个文件。它要比NT注册表文件简单的多,因为这里并不需要更多的控制。Win95被设计为一个网络的客户或者单独工作的系统,所以用户控制或者安全级别和NT不一样。这使得Win95注册表工作比NT更容易,所以这个文件也比较小。

Win95用户的注册数据一般被保存在windows目录下的user.dat里。如果你在控制面板|密码|用户配置文件中创建并使用多于一个用户的配置文件,每个用户就会有在\WINDOWS\Profiles\username\USER.DAT下它自己的user.dat文件。在启动时,系统将记录你的登陆,从你目录中的配置文件(USER.DAT信息)将被装入,以用来保持你自己的桌面和图标。

控制键

在注册表编辑器中注册表项是用控制键来显示或者编辑的。控制键使得找到和编辑信息项组更容易。因此,注册表使用这些条目。下面是六个控制键

HKEY_LOCAL_MACHINE

HKEY_CLASSES_ROOT

HKEY_CURRENT_CONFIG

HKEY_DYN_DATA

HKEY_USERS

HKEY_CURRENT_USER

Winnt和Win95的注册表并不兼容。从Win95向Winnt升级需要你重新安装32位应用程序,重新在桌面上创建图标,并重新建立用户环境。

通过控制键可以比较容易编辑注册表。虽然它们显示和编辑好象独立的键,其实HKEY_CLASSES_ROOT 和HKEY_CURRENT_CONFIG是 HKEY_LOCAL_MACHINE的一部分。HKEY_CURRENT_USER是HKEY_USERS的一部分。

HKEY_LOCAL_MACHINE包含了HKEY_CLASSES_ROOT和HKEY_CURRENT_CONFIG的所有内容。每次计算机启动时,HKEY_CURRENT_CONFIG和HKEY_CLASSES_ROOT的信息被映射用以查看和编辑。

HKEY_CLASSES_ROOT其实就是HKEY_LOCAL_MACHINE\SOFTWARE\Classes,但是在HKEY_CLASSES_ROOT窗编辑相对来说显得更容易和有条理。

HKEY_USERS保存着缺省用户信息和当前登陆用户信息。当一个域成员计算机启动并且一个用户登陆,域控制器自动将信息发送到HKEY_CURRENT_USER里,而且HKEY_CURRENT_USER信息被映射到系统内存中。其他用户的信息并不发送到系统,而是记录在域控制器里。

键和子键

数据被分割成多层次的键和子键,建立分层次(就象Exploer一样)结构更易于编辑。每个键有成组的信息而且根据在其中的数据类型被命名。每个键在它的文件夹图标上都有一个加号(+)标志子键说明在它下面还有更多内容的东西。当点开它的时候,文件夹的加号标志被替换成一个减号(-)标志,然后显示出下一级的子键。

所有软件,硬件,windows工作的设置都存放在HKEY_LOCAL_MACHINE。所有安全策略,用户权限和共享信息也包括在这个键中。用户权限,安全策略,共享信息可以通过Windows NT域用户管理器,Explorer和Win95中控制面板来设置。

HKEY_CLASSES_ROOT

HKEY_CLASSES_ROOT包含了所有应用程序运行时必需的信息:

在文件和应用程序之间所有的扩展名和关联;

所有的驱动程序名称;

类的ID数字(所要存取项的名字用数字来代替);

DDE和OLE的信息;

用于应用程序和文件的图标;

HKEY_CURRENT_CONFIG.

HKEY_CURRENT_CONFIG是在HKEY_LOCAL_MACHINE中当前硬件配置信息的映射。如果系统只有一个配置文件,也就是原始配置,数据将一直在同样的地方。在控制面板|系统|硬件配置文件|创建一个额外的配置使额外配置信息放入HKEY_LOCAL_MACHINE。当Win95中存在多个配置文件时,当每次计算机启动时将给出一个提示让你选择一个配置文件。在Winnt中,在启动时你可以按空格键来选择上次正常启动时硬件配置文件。根据硬件配置文件选择的不同,特定的信息被映射到HKEY_CURRENT_CONFIG。

HKEY_DYN_DATA

HKEY_DYN_DATA和其他的注册表控制键不同,因为实际上它并不被写入硬盘驱动器中。Win95的一个优点是,在系统启动时HKEY_DYN_DATA这个控制键储存收集到的即插即用信息并配置它们。它保存在内存中,Win95用它来控制硬件。因为是在内存中,所以它不从硬盘中读取,每次当你启动计算机时,配置都有可能会不一样。在启动时Win95必须计算超过1600种可能的配置。所以,如果系统改变既定的设置而没有报告给Win95那么潜在的问题就可能发生。系统大多数时间工作良好,但是并非一直如此。

HKEY_USERS

HKEY_USERS仅包含了缺省用户设置和登陆用户的信息。虽然它包含了所有独立用户的设置,但在用户未登陆网络时用户的设置是不可用的。这些设置告诉系统哪些图标会被使用,什么组可用,哪个开始菜单可用,哪些颜色和字体可用,和控制面板上什么选项和设置可用。

HKEY_CURRENT_USER

用来保存当前用户和缺省用户的信息,HKEY_CURRENT_USER仅映射当前登陆用户的信息。

各主键的简单介绍

HKEY_LOCAL_MACHINE

HKEY_LOCAL_MACHINE是一个显示控制系统和软件的处理键。HKLM键保存着计算机的系统信息。它包括网络和硬件上所有的软件设置。(比如文件的位置,注册和未注册的状态,版本号等等)这些设置和用户无关,因为这些设置是针对使用这个系统的所有用户的。

HKEY_LOCAL_MACHINE\AppEvents

为了以后在瘦客户机上运行客户机/服务器这样的应用程序,在Win95/98中AppEvents键是空的。应用程序实际上都驻留网络服务器上,这些键会保存部分指针。

HKEY_LOCAL_MACHINE\Config

这个键保存着你计算机上所有不同的硬件设置(这些从控制面板的系统属性中硬件配置文件中可以创建)。这些配置在启动时通常被复制到HKCC。每个配置会被用一个键(比如0001或者0002等等)来保存,每个都是一个独立的配置。如果你只有一个单一的配置,那就只会有0001这个键

HKEY_LOCAL_MACHINE\Config\0001\Display

这个键表示显示的设置,如荧屏字体,窗体大小,窗体位置和分辨率等

一个小技巧:当设置了计算机不支持的大分辨率导致Windows不能启动时(黑屏),可以修改分辨率来解决。进入安全模式,运行regedit.exe,在这个键的Resolution键值中把数据值修改为640,480或者800,600这样的低分辨率,然后重新启动计算机即可。

HKEY_LOCAL_MACHINE\Config\0001\System

这个键保存着系统里打印机的信息

HKEY_LOCAL_MACHINE\Config\0001\System\CurrentControlSet\Control\Print\Printers

在这个键下面,有一个键是为系统上每一个打印机设置的,通过控制面板添加和删除打印机会调整这个列表

HKEY_LOCAL_MACHINE\Enum

Enum键包含启动时发现的硬件设备和那些既插即用卡的信息。Win95使用总线列举在启动时通过不同的.ini文件来检测硬件信息。那些在启动时被安装的和被检测到的硬件会显示在这里。子键包括BIOS, ESDI, FLOP, HTREE, ISAPNP, Monitor, Network, Root, SCSI, 和 VIRTUAL。子键名表示它们各自的硬件设备信息。

HKEY_LOCAL_MACHINE\Enum\BIOS

BIOS键保存着系统中所有即插即用设备的信息。它们用一套代码数列出,包括每一个键的详细说明,举例,*pnp0400是并行口LPT1的键。如果LPT1并不具备即插即用功能,它就会别列入到Enum下的Root键中

HKEY_LOCAL_MACHINE\Enum\Root

Root键包括所有非即插即用设备的信息。在这里,我们可以迅速断定哪些设备是即插即用,那些不是。比如SCSI适配器,这个设备必须符合Win95中一个键名为ForcedConfig的硬件设置,这个不会改变。

HKEY_LOCAL_MACHINE\Enum\Network

win95的网络功能在这个键有详细说明,子键包括了每个已经安装的主要的服务和协议。

HKEY_LOCAL_MACHINE\HARDWARE

hardware子键包括了两个多层的子键:DESCRIPTION键,它包含了中央处理器和一个浮点处理器的信息。还有一个设备映射键,它下面的串行键列出你所有的com端口。这个hardware键仅保存超级终端程序的信息,及数学处理器和串行口。

HKEY_LOCAL_MACHINE\Network

这个键仅保存网络登陆信息。所有网络服务细节都保存在HKEY_LOCAL_MACHINE\Enum\Network这个键中。这个键有一个子键,logon,包括了lmlogon(本地机器登陆?0=false 1=true)的值,logonvalidated(必须登陆验证),策略处理,主登陆方式(Windows登陆 ,微软网络客户方式等),用户名和用户配置。

HKEY_LOCAL_MACHINE\SECURITY

security 有两个子键,第一个是存取(它最终致使一个远程键列出网络安全,存取权限等)和提供(包括列出网络地址和地址服务器),这个键被保留用在以后使用高级安全功能和NT兼容性上

HKEY_LOCAL_MACHINE\SOFTWARE

这个键列出了所有已安装的32位软件和程序的.ini文件。它包括了变化,依靠软件安装。那些程序的控制功能在这里的子键中列出。多数子键简单的列出了安装软件的版本号。

我们在\Microsoft\Windows\Current Version下发现了一些有意思的设置,它有如下子键:

1.App paths: 你曾经安装过的所有32位软件的位置。

2.Applets, Compression, Controls Folder : 包括下控制面板象显示属性那样属性条的附件。

3.Detect, explorer :很多有意思的子键如Namespace keys of Desktop和My Computer----它们指出了回收站和拨号网络的CLSID行----和提示子键可以让你建立自己的提示。

4.Extensions : 一个扩展联系的列表,当前相关联的扩展名和比特定的执行文件更适合的目标类型。

5.Fonts, fontsize, FS Templates :系统属性条中所选择文件系统模板, 服务器,桌面计算机或者笔记本电脑信息。

6.MS-DOS Emulation :包括一个应用程序兼容子键 为大量过时的程序二进制键所设。

7.MS-DOS Options :在dos模式下的设置,如himem.sys,cd-roms等。

8.Network :网络驱动的配置。

9.Nls, Policies :系统管理员认为你不应该去做的事。

10.ProfileList :所有可以登陆你计算机的用户名列表。

11.在Windows启动时运行的程序的神秘之处是它们并不在开始菜单的启动文件夹中。它们在HKEY_LOCAL_MACHINE\Microsoft\Windows\CurrentVersion\下的子键中被执行。

Run : 程序在启动时运行

RunOnce : windows初始化时程序在启动时只运行一次,这个经常用在当安装软件之后需要重新启动系统的时候,所以这个键一般都是空的。

RunServices : 它就象Run一样,但是包含了“服务”,它不象一般的程序它们是比较重要的或者是“系统”程序。但是它们不是VXDs,就象McAfee或者RegServ工作一样。

RunServicesOnce : 它只运行一次,但是是“系统自身”的安装(大量的windows安装参数:通常键值包括了系统目录位置,和win95更新,可选项安装组件,和windows启动目录的子键。

注意:在很多黑客木马软件中,常常在这里添加键值(一般是在Run中),这样使得木马软件可以随着windows启动而启动并且很隐秘。在这里可以查看不正常的启动项和去掉无用的运行程序(比如我就很不喜欢超级解霸的自动伺服器,在这里可以去掉它)。

12.SharedDLLs:共享DLL的列表,每一个都给出了在一个不可知系统的一个数字等级。

13.Shell Extensions:列出了“被认可的”OLE注册条,和相应的CLSID连接。

14.ShellScrap :这个包含了一个PriorityCacheformats的子键,它包括了一个空的有限值,它更象过去SmartDrive命令行参数的派生。

15.Time Zones : 主键值是你现在的时区;子键定义了所以可能的时区。

16.Uninstall:这个保存了程序在添加/删除程序对话框的显示;子键包含了指向反安装程序的路径。和安装向导相似.......)winlogon(包含了合法登陆布告的文本句)

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet

这个子键包括设备驱动和其他服务的描述和控制。不同于windows nt,win95只包括限制驱动的控制设置信息。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control

这个子键包括了win95控制面板中的信息。不要编辑这些信息,因为一些小程序的改变在很多地方,一个丢失的项会使这个系统变的不稳定

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

这个键包括了所有win95的标准服务。所有被添加的服务和设备,每个标准的服务键包括了它的设置和辨认设置。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Arbitrators

atbitrators键包括了当两个设备共同占用同样的设置需要解决的信息。四个子键包括了内存地址,冲突,DMA,I/O端口冲突和IRQ冲突。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Class

class键包括了所有win95支持的设备classes控制,这些和你在添加新硬件出现的硬件组很类似,还包括了这些设备如何安装的信息。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\inetaccs

这个键包括了关于这个系统变化的ie附件的可用性,它仅在你安装过ie2。0或者更高版本才出现。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSNP32

msnp32描述了客户机如何在microsoft网络中实现功能,它包括了认证过程和认证者的信息。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NWNP32

nenp32键描述了windows客户如何在netware网络中工作功能,它包括了关于认证过程和证明者的信息。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RemoteAccess

在这个键里包括需要远程工作在win95系统上的信息,有认证参数,主机信息,和为了建立一个拨号连接工作的协议信息。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP

这个键包括了所以snmp(简单网络管理协议)的参数。它包括了允许的管理,配置陷阱,和有效的团体。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD

vxd键包括了win95中所有32位虚拟设备驱动信息,win95自动管理它们,所以不必要用注册表编辑器编辑它们,所以的静态vxds用子键列出。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebPost

webpost键包括了所有装载的internet邮局的设置,如果你连接一个isp,并且它列出载这里,你应该给自己选则一个服务器。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Winsock

这个键列出了当连接到internet上winnsock文件的信息,如果列出了不正确的文件,你将不会连接上internet。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinTrust

wintrust功能是检查从Internet上下载来的文件是否有,它可以确保你得到干净安全的文件。

HKEY_CLASSES_ROOT

在注册表中HKEY_CLASSES_ROOT是系统中控制所有数据文件的项。这个在Win95和Winnt中是相通的。HKEY_CLASSES_ROOT控制键包括了所有文件扩展和所有和执行文件相关的文件。它同样也决定了当一个文件被双击时起反应的相关应用程序。

HKEY_CLASSES_ROOT被用作程序员在安装软件时方便的发送信息,在Win95和Winnt中,HKEY_CLASSES_ROOT和HKEY_LOCAL_MACHINE\Software\Classes是相同的。程序员在运行他们的启动程序时不需要担忧实际的位置,相反的,他们只需要在HKEY_CLASSES_ROOT中加入数据就可以了。

在Windows用户图形界面下,每件事----每个文件,每个目录,每个小程序,每个连接,每个驱动---都被看做一个对象;每个对象都有确定的属性和它联系。HKCR包含着对象类型和它们属性的列表。HKCR主要的功能被设置为:

一个对象类型和一个文件扩展名关联

一个对象类型和一种图标关联

一个对象类型和一个命令行动作的关联

定义对象类型相关菜单选项和定义每一个对象类型属性选项

在Win95中,相关菜单就是当你鼠标右击一个对象时所弹出的菜单;属性就是当你选择属性项后一个展开的对话框。用简单术语来说就是在改变HKCR中的设置可以改变一个给定文件扩展名缺省的关联。改变一个文件类型的缺省图标,和添加或者删除给定对象类型的弹出菜单内容(或者所有的对象类型)

HKCR包括了三种基本类型的子键

\ 或者文件扩展名子键

文件扩展名子键在弹出菜单上连接文件扩展名到对象类型和相关操作,属性项,和相关操作。

\object 类型子键

对象类型子键定义了一个对象类型在它缺省图标的项,它的弹出菜单和属性项,它的相关操作和它的CLSID连接。

\CLSID 子键

在Windows下每件事都被用一个数字取代它的名字来对待。就象人往往是用名字来处理事情一样。CLSID是标识所有列出的图标,应用程序,目录,文件类型等等对象的数字。是微软为制造商分配的,每一个都必须是唯一的。制造商将CLSID放入安装程序文件这样就可以在安装时更新注册表。

注册表是应用程序进行时它们需要关于做什么的指示的数据库。比如说,定你有一个微软Excel 7电子数据表的Word 7文档,当你在Word中双击这个电子数据表,应用程序菜单就会变成Excel的菜单而且电子数据表进入编辑状态,就好象你在Excel中一样。它是如何知道该做什么呢?每个Excel 7创建的文件都有Excel的CLSID连接。Word读这个CLSID后,到注册表中寻找指示,依赖CLSID下的数据运行.DLL文件或者应用程序。

CLSID子键为对象类型提供了OLE和DDE信息和图标。相关菜单,或者包含在它子键中的属性项信息。这个可能是多数让人看到后觉得“恐怖”的键。每个CLSID数必须是唯一的,实际上,为了这个目的微软已经出产了CLSID-产生程序--这个结果导致你往往得到32位16进制的数字串,除非你是程序员,否则多数部分键看起来是很枯燥的。它们包括内存管理模式,客户机/服务器配置,和OLE处理的.dll连接。

关于子键的一点注解

1)shell:Shell键有个一”action“子键,如同”open“一样,这里有一个command子键;command子键有一个缺省句值,它包含了运行程序的命令行。将一个”open“子键放在一个对象类型的shell子键中会在这个对象类型的弹出菜单上多出一个”open“选项,给这个open子键一个command(缺省命令行"C:\Windows \Notepad.exe %1")子键会使得打开这个对象类型时使用笔记本做为缺省应用程序。其他操作选项包括View,Print,Copy,Virus,Scan等等。

2)shellex:Shellex键有一个子键。它们包含的每一个子键指向一个为对象类型执行OLE和DDE功能的CLSID项(比如说快速查看,一个菜单处理子键下指向一个有句值的CLSID键列出了包含了文件浏览功能的.dll文件)

3)shellnew:ShellNew包含了一个“command”句,它包含了一个打开对象类型“新”文件的命令行。

4)DefaultIcon:DefaultIcon子键包含了一个“default”句,?/td>

回答者:skbbb - 江湖新秀 四级 5-5 21:33

您觉得最佳答案好不好? 目前有 0 个人评价

50% (0)

50% (0)

其他回答共 2 条

什么是注册表?

《英汉双解微软计算机辞典》(第 5 版)对注册表的定义是:

Microsoft Windows 9x、Windows CE、Windows NT 和 Windows 2000 中使用的中央分层数据库,用