注册表的文件关联及应用

注册表的文件关联及应用喜欢使用Windows右键快捷菜单的朋友可能知道,当你选择了一个文件(或者是文件夹或是系统图标)再单击鼠标右键,系统就会弹出一个菜单,菜单上面的各种“功能”(或称“操作”)任你选择,但是你是否注意到,当你安装一些应用软件之后,你的右键菜单是不是膨胀,以winzip为例,安装winzip之后,文件或文件夹的右键菜单当中就增加了功能选择项"Add to Zip"和"Add to xxx.zip",如图一,看到这个变化,我们不禁要问,这些选择项是怎么加入的,可不可以自己来添加。

带着这些问题,我们再来看Windows的文件关联。

什么是文件关联呢?通俗地说,就是选择不同类型的文件时,在其右键菜单上显示的各功能项。

每个功能项即对应一个关联。

选择了某一功能(操作),系统就去执行相应的处理程序。

至于对什么文件的什么操作对应什么样的处理程序,那都记录在系统注册表中。

因此,要真正弄清文件关联,必须深入研究注册表。

这个问题解决了,我们就可以利用注册表随心所欲地为文件建立,修改,删除关联。

既然关联信息都写在注册表中,那么它在注册表中又是怎样构成的呢?我们不妨打开注册表,观察根键HKEY_CLASSES_ROOT之下的各个主键。

(这样或许更易说明这一点)你是不是看到了很多前面有一个点(.),后面好象是文件扩展名的主键,如图二所示如.bat,.txt,.lnk,.bmp等。

我们把这一类的主键称之为“扩展名主键”,每个扩展名主键都有一个默认键值。

如:主键.bat的默认值为batfile; .lnk主键的默认值为lnkfile。

举了这两个例子,你是否看出了其中的规律。

即:若“扩展名主键”名为.xxx(xxx为某一类文件的扩展名),那么它的默认键值就为xxxfile。

当然并不是所有的默认值都是这样,也可能多个主键对应同一默认值。

比如:主键.jpeg 和主键.jpg,它们的默认值jpgfile;.html和htm的默认值都为htmlfile。

为什么要说这么多的扩展名主键的默认值呢?其中原因且听我慢慢道来。

这个默认键值的作用就非同小可了,它可是文件关联的桥梁和纽带,是它将文件的类型(以扩展名来标识文件类型)与文件的关联联系起来。

不信,你可以将某一“扩展名主键”的默认键值乱改一通,你就会发现,该类文件的许多关联项在右键菜单中消失了。

既然这个重要的默认键值起了一个桥梁的作用,那么桥梁的另一端——文件的关联又是如何定义的呢?我们继续看注册表,让它来给我们解释。

依然是在HKEY_CLASSES_ROOT根键之下。

我们可以看到该根键之下有如下主键。

如:batfile,txtfile,lnkfile 等。

(如图三)看到没有这些主键好象都是刚才我们所说的“扩展名主键”的默认值。

不错,上述默认值在此处正好变成了主键名——这就是桥梁。

我们把这一类的主键称为“标识主键”。

一般而言,在“标识主键”之下有以下几个重要主键:(如图四)DefaultIcon主键,它的功能是定义该类文件的默认图标。

Shell主键,它的功能是本文讨论的中心——文件关联之“命根”所在。

文件的各种关联都寄生在此“根”之下,正是它定义了该类文件与多个程序相关联。

它的默认值也很有用,你是否还记得双击文件可以将文件打开(对于已注册的文件),这种打开就是利用了系统注册表所设定的默认打开方式,即由shell主键的默认键值来控制。

它之下的每个主键,都可称作是“关联主键”(如图四)。

“关联主键”的键名是任意的(建议用英文),它的默认键值也是我们感兴趣的。

因为这一默认键值会直接显示在右键菜单中,并且每个“关联主键”之下都有一个command 主键,这个主键定义的就是“该关联对应的执行程序”。

如图五所示,到此文件关联已昭然若揭。

下面我们就以.reg文件(注册表的脚本文件)为例来说明其关联过程。

首先.reg文件在HKEY_CLASSES_ROOT根键之下有一个“扩展名主键”。

.reg其默认值为regfile,说明reg类型文件关联的主键是regfile。

再在该根键之下找“标识主键”regfile,regfile主键之下有一个DfaultIcon主键,作用是定义reg文件的默认图标。

其默认键就是图标的全路径文件名。

如: C:\windows\regedit.exe,1(表示的是regedit.exe中的第2个图标)。

regfile主键之下还有一个上文称之为“命根”的主键shell,reg文件的关联就记录在shell之中。

下面我们就为regt建立一个关联。

步骤为:在shell主键之下,新建主键xxf(名任意),置其默认值为:“徐喜峰的文本编辑器”,再在xxf主键之下新建主键command,置其默认值为C:\Windows\Notepad.exe %1,该默认值的意义为:用记事本来打开当前reg文件。

若没有%1参数,则只运行记事本程序,而不打开当前文件。

设置完毕,你再看看reg文件的“右键菜单”,是不是多了一个“徐喜峰的文本编辑器”选项(如图六),爽吧!~以上所说的只是作用于普通文件的关联,然而在Windows中,除了文件,还有文件夹及特殊的文档(如我的电脑,驱动器,回收站等)。

那么这些又该如何设置关联呢?那就请大家记住在HKEY_CLASSES_ROOT根键之下还有以下几个重要的系统关联主键:*:作用于所有文件,它与“标识主键”的关联方法一样。

Directory:作用于一般文件夹。

Folder:作用于所有文件夹,包括特殊文件,如:控制面板,回收站等。

Drive:作用于驱动器,如A驱,B驱,C驱。

Unknow:作用于系统不能识别的文件类型,即没有注册的文件类型。

最基本的文件关联就谈到此处,下面来看看文件关联的应用。

应用之一:让MS-DOS方式无处不在。

经常用到DOS方式的朋友可能有些厌烦,因为每次进入DOS方式,都要选择“开始\程序\MS-DOS方式”。

利用文件关联,我们可以将MS-DOS方式添加到任何文件的“右键菜单”中,这样就省事多了,方法为:将注册表展开到HKEY_CLASSES_ROOT\*\shell分支。

(在所有文件的“右键菜单”中添加MS-DOS方式)新建主键“MS-DOS",置其默认值为“进入MS-DOS方式”,在MS-DOS主键之下新建command主键,置其默认值为:“C:\Windows\”。

另注册表展开到HKEY_CLASSES_ROOT\Folder\shell分支,(在所有文件夹的“右键菜单”中添加MS-DOS方式)设置同上。

应用之二:隐去快捷方式图标中的小箭头。

如果你觉得快捷方式图标中的小箭头有点障眼,那么利用关联,可以将之去掉,将注册表展开到HKEY_CLASSES_ROOT\lnkfile分支,将lnkfile主键之下的键值Isshortcut删除,再将注册表展开到HKEY_CLASSES_ROOT\piffile分支,将piffile主键之下的键值Isshortcut删除,即大功告成。

应用之三:用记事本来编辑bat文件。

有时想编辑bat文件,而习惯性地双击它,这一双击,并没有将它打开编辑,而是将它执行,让人甚为恼火。

利用注册表的文件关联,可以将之改变。

将注册表展开到HKEY_CLASSES_ROOT\batfile\shell分支,将shell主键的默认值由open改为edit即可。

应用之四:更改某类文件的默认图标。

以txt文件为例,将txt文件的图标改为“我的电脑”的图标。

将注册表展开到HKEY_CLASSES_ROOT\txtfile\DefaultIcon分支,将主键DefautIcon的默认键值改为:"C:\Windows\explorer.exe,0" 即可。

应用之五:为所有文件增加“打开方式”。

将注册表展开到HKEY_CLASSES_ROOT\*\shell分支,新建主键open_as,置其默认值为“选择打开方式”,在Open_As主键之下新建主键command,置其默认值为:"C:Windows\rundll32.exe shell32.dll , openAs_RunDll %1"应用之六:将“关机”加入到右键菜单。

将注册表展开到HEKY_CLASSES_ROOT\Directory\shell分支,新建主键close,置其默认值为“关闭系统”,再在close主键之下,新建主键command,置其默认值为:"C:\Windows\rundll32.exe user.exe, exitwindows"以上六例应用,总体上能够概述文件关联的基本结构和基本框架,弄清了文件关联的结构与框架,自己再增加关联就是小菜一碟了。

只要你有兴趣,你可以将你的右键菜单加得满满的。

如果你想了解更深一层次的文件关联,那就请你参阅有关windows注册表方面的书籍与资料,或与我联系,我的Email是amen.twty@。

在文章结束之前,还告诉大家一点小小的诀窍:那就是注册表在作过修改之后,很多场合需要重新启动才能生效。

这里我告诉大家一个不需要重启但又能快速更改注册表的方法:选择“开始\关闭系统”,在弹出“关闭系统”框之后,按Ctrl+Alt+Del 组合键,出现“结束任务”框,选择其中的“Explorer”,再单击“结束任务”,等待一会儿(10秒左右),就会出现一个“结束任务”确认框,点击“结束任务”按钮即可。

合集下载

注册表作用

注册表作用

注册表作用注册表是操作系统中的一个重要组成部分,用于存储和管理计算机系统的配置信息。

它的作用在于记录和管理计算机硬件、软件和用户配置的相关数据,从而帮助计算机系统高效、稳定地运行。

首先,注册表存储了计算机硬件的配置信息。

每当计算机启动时,注册表会记录硬件的型号、驱动程序的安装情况以及设备的连接方式等重要信息。

这些数据有助于操作系统在启动过程中正确识别和配置硬件设备,确保其能够准确地与操作系统交互。

其次,注册表也存储了软件应用程序的配置信息。

当用户安装软件时,其配置信息会被保存到注册表中,包括安装路径、默认设置、文件关联等等。

通过注册表,操作系统能够在用户打开软件时快速读取并加载相应的配置信息,从而提高软件的启动速度和运行效果。

此外,注册表还保存了用户的个人配置信息。

用户在计算机上进行个性化设置时,如修改桌面背景、更改主题样式、安装字体等,这些配置信息都会被记录在注册表中。

当用户重新登录或重新启动计算机时,操作系统能够自动加载这些个性化设置,使得用户能够快速恢复到之前的工作环境。

除了上述功能外,注册表还用于记录操作系统的系统配置信息。

这些信息包括系统启动项的配置、系统服务的启停状态、网络设置、安全策略等。

通过注册表,系统管理员可以方便地查看和更改这些系统配置,以满足不同用户或网络环境的需求。

值得一提的是,注册表还起到了数据共享和通信的作用。

多个应用程序或服务可以通过注册表中的键值对来共享数据,并实现相互间的通信。

这对于一些复杂的软件系统或多个组件之间的协同工作是非常重要的。

但是,需要注意的是,注册表的管理应谨慎,因为不正确的操作可能会导致系统崩溃或出现其他故障。

对于新手或不熟悉计算机系统的用户来说,最好不要随意更改注册表中的值,以免给系统带来不必要的风险。

如果需要更改注册表,请事先备份并谨慎操作。

总之,注册表在计算机系统中起着非常重要的作用。

它存储和管理了计算机硬件、软件和用户的配置信息,从而帮助操作系统正确配置硬件设备、高效运行软件,并满足用户的个性化需求。

深入注册表之文件关联——文件关联认识篇

深入注册表之文件关联——文件关联认识篇

深入注册表之文件关联——文件关联认识篇谈起Windows的注册表,大家一定不会陌生吧?由于它的“高深莫测”和易损性,使不少CFAN视它为“禁区”,更不乏谈“表”色变之士。

其实小弟以前也未尝不是如此,即使是经过了X次当机后(修改注册表的结果),也只得了这么一丁点经验。

为了不让更多的CFAN重蹈小弟的覆辙,就把这一丁点经验告知大家。

其实关于注册表的文章,在各大报刊杂志上比比皆是,但多以“修改密技”见长,本篇自然不会再叙,而是针对注册表中最重要也是最让人头痛的文件关联部分,介绍其基本结构及应用技巧。

什么是文件关联文件关联是什么?简单地说,就是单击不同类型文件时,在鼠标右键菜单上看到的关联项目。

对于已注册的文件,会以不同的图标显示它们,双击它时会启动不同的关联程序,而所有这些设置信息都存放在注册表中,因此,只要掌握其基本结构和各键值项的设置,就能随心所欲地定义文件关联了。

注:下文所涉及注册表内容,除作特别说明处,均适用于Win9x;文中所例文件和路径,请按本机实际设置做相应修改。

另外请及时备份注册表,以防不测。

文件关联的基本结构首先运行Regedit.exe(注册表的基本结构知识,请参考98年第1、12、24期有关文章,这里不在细述),其中第一项【HKEY_CLASSES_ROOT】(以下简称ROOT)便是存放文件关联信息的根键,细心的朋友会发现,它和【HKEY_LOCAL_MACHINE\Software\CLASSES】键下的内容完全一样,其实这是系统为了方便访问而设置的动态映射,对其中任何一个操作,效果都一样(下文以ROOT根键为准)。

下面就让我们看看它的基本结构。

一个基本的文件关联,通常由以下两大主键构成(各主键的层次关系,请仔细参照例图)。

一扩展名键(如图1)A.键名:由“.”(无双引号)加上相应扩展名构成。

如“.Bat”。

在ROOT根键中,可以看到许多这种类型的主键。

默认键值:此值的作用是指向一个“标识键”,既起入口作用(下文将介绍);可以任意取值,但该值必须和“标识键”的键名相同,既它们之间应是一一对应的关系。

结合实训经验,简述注册表及其作用

结合实训经验,简述注册表及其作用

结合实训经验,简述注册表及其作用
注册表是Windows操作系统中的一个重要组成部分,它用于存储系统和应用程序的配置信息。

它可以被视为一个数据库,其中包含了大量的键值对,用来存储各种设置、选项和参数。

注册表的主要作用是保存系统的配置信息,包括硬件设置、软件安装信息、用户设置等。

它记录了系统的各种参数,如网络设置、显示设置、文件关联等。

通过注册表,系统能够在启动时读取这些配置信息,并根据其内容进行相应的初始化操作,从而使系统和应用程序能够正常运行。

注册表的另一个重要作用是提供了一个统一的地方来管理和修改系统的设置。

通过注册表编辑器,用户可以浏览和修改注册表中的键值对,以调整系统和应用程序的各种配置选项。

这使得用户能够根据自己的需求来个性化设置系统。

在实训经验中,注册表的使用经常涉及到修复系统错误、优化系统性能和解决应用程序问题等方面。

例如,当系统出现错误或应用程序无法正常运行时,可以通过修改注册表来修复问题。

另外,通过调整注册表中的参数值,还可以优化系统的性能,如加快启动速度、提升系统响应速度等。

总的来说,注册表在Windows操作系统中扮演着重要角色,它存储了系统和应用程序的关键配置信息,不仅能够保证系统正常运行,还提供了一个统一的地方来管理和修改系统的设置。

通过实训经验的学习和实践,我们能够更加深入地理解注册表的作用,并能够灵活运用它来解决问题和优化系统。

注册扩展名的关联程序-概述说明以及解释

注册扩展名的关联程序-概述说明以及解释

注册扩展名的关联程序-概述说明以及解释1.引言1.1 概述在计算机文件系统中,扩展名是文件名的一部分,用于标识文件类型。

注册扩展名的关联程序是指在操作系统中,将特定的扩展名与相应的程序关联起来,使用户可以直接打开该类型的文件而不必手动选择程序。

本文将介绍注册扩展名的概念、作用和分类,旨在帮助读者更好地理解和使用计算机系统。

文章结构是一个长文或者论文的骨架,它帮助读者了解文章的整体组织和内容安排。

在本文中,我们将按照以下结构来展开讨论:1. 引言1.1 概述在这一部分,我们将介绍注册扩展名的概念和背景,让读者对主题有一个基本的了解。

1.2 文章结构这一部分将会介绍文章的结构和目录,让读者了解接下来的内容安排。

1.3 目的我们将明确本文撰写的目的,即探讨注册扩展名的关联程序,以及其在计算机系统中的重要性和应用价值。

2. 正文2.1 什么是注册扩展名在这一部分,我们将详细解释什么是注册扩展名,它们在计算机系统中的作用和意义。

2.2 注册扩展名的作用探讨注册扩展名的重要作用,包括文件识别和关联程序启动等方面。

2.3 注册扩展名的分类我们将介绍不同类型的注册扩展名,以及它们在系统中的分类和特点。

3. 结论3.1 总结总结本文的主要内容和观点,强调注册扩展名在计算机系统中的重要性和应用。

3.2 应用探讨注册扩展名在实际应用中的案例和效果,展示其实际价值和意义。

3.3 展望展望注册扩展名未来的发展趋势和潜在的应用领域,展示其在计算机系统中的前景和发展空间。

通过以上结构,读者可以清晰地了解本文的内容和组织架构,帮助他们更好地理解和理解注册扩展名的关联程序这一主题。

1.3 目的:本文的主要目的是探讨注册扩展名及其关联程序的功能和意义。

通过深入分析注册扩展名的定义、作用和分类,帮助读者更好地理解注册扩展名在计算机系统中的重要性和作用,以及如何根据不同的需求和环境选择合适的注册扩展名。

此外,本文旨在引起读者对于注册扩展名管理的重视,提高其对计算机系统安全性和效率的认识。

win10注册表路径

win10注册表路径

win10注册表路径Win10注册表路径是Windows 10操作系统中用于存储系统配置信息的重要组成部分。

通过注册表路径,用户可以访问和修改系统的各种设置和选项。

本文将介绍一些常用的Win10注册表路径及其作用,帮助读者更好地理解和使用该功能。

1. HKEY_CLASSES_ROOT(HCR)HKEY_CLASSES_ROOT存储了文件类型和程序关联的信息。

在该注册表路径下,可以找到文件扩展名与关联程序之间的映射关系。

例如,.doc文件扩展名与Microsoft Word的关联就可以在这里找到。

2. HKEY_CURRENT_USER(HKCU)HKEY_CURRENT_USER存储了当前登录用户的个人设置信息。

包括桌面背景、文件夹选项、壁纸等个性化设置。

在这个注册表路径下,用户可以根据自己的喜好进行配置。

3. HKEY_LOCAL_MACHINE(HKLM)HKEY_LOCAL_MACHINE存储了计算机的整体配置信息。

包括硬件和软件的设置、驱动程序信息、系统服务等。

在这个注册表路径下,用户可以进行系统级的配置和优化。

4. HKEY_USERSHKEY_USERS存储了所有用户的配置信息。

包括每个用户的个人设置、桌面配置、程序选项等。

在这个注册表路径下,用户可以查看和修改其他用户的配置信息。

5. HKEY_CURRENT_CONFIG(HKCC)HKEY_CURRENT_CONFIG存储了当前计算机的硬件配置信息。

包括显示器、打印机、网络连接等硬件设备的设置。

在这个注册表路径下,用户可以查看和修改硬件设备的相关配置。

6.HKEY_CURRENT_USER\Software\Microsoft\Windows\Current Version\Run该注册表路径下存储了当前用户登录时需要自动启动的程序。

用户可以根据自己的需求,添加或删除需要自启动的程序。

7.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curr entVersion\Run该注册表路径下存储了所有用户登录时需要自动启动的程序。

注册表是什么意思注册表各部分有什么作用及功能

注册表是什么意思注册表各部分有什么作用及功能

注册表是什么意思注册表各部分有什么作⽤及功能今天,为⼤家分析⼀篇⽂章“注册表键值简介,注册表各部分含义是什么?”,关于这个,希望新⼿的可以多学习⼀下,针对这个问题,进⾏了分析,那么⼩编就简单分析⼀下吧:与注册表有关的术语1、注册表:是⼀个树状分层的数据库(如图)。

从物理上讲,它是System.dat和User.dat两个⽂件;从逻辑上讲,它是⽤户在注册表编辑器中看到的配置数据。

2、HKEY :“根键”或“主键”,它的图标与资源管理器中⽂件夹的图标有点⼉相像。

Windows将注册表分为六个部分,并称之为HKEY_name,它意味着某⼀键的句柄。

3、key(键):它包含了附加的⽂件夹和⼀个或多个值。

4、subkey(⼦键):在某⼀个键(⽗键)下⾯出现的键(⼦键)。

5、branch(分⽀):代表⼀个特定的⼦键及其所包含的⼀切。

⼀个分⽀可以从每个注册表的顶端开始,但通常⽤以说明⼀个键和其所有内容。

6、value entry(值项):带有⼀个名称和⼀个值的有序值。

每个键都可包含任何数量的值项。

每个值项均由三部分组成:名称,数据类型,数据。

名称:不包括反斜杠的字符、数字、代表符、空格的任意组合。

同⼀键中不可有相同的名称。

数据类型:包括字符串、⼆进制、双字三种。

字符串(REG_SZ):顾名思义,⼀串ASCII码字符。

如“Hello World”,是⼀串⽂字或词组。

在注册表中,字符串值⼀般⽤来表⽰⽂件的描述、硬件的标识等。

通常它由字母和数字组成。

注册表总是在引号内显⽰字符串。

⼆进制(REG_BINARY):如 F03D990000BC ,是没有长度限制的⼆进制数值,在注册表编辑器中,⼆进制数据以⼗六进制的⽅式显⽰出来。

双字(REG_DWORD):从字⾯上理解应该是Double Word ,双字节值。

由1-8个⼗六进制数据组成,我们可⽤以⼗六进制或⼗进制的⽅式来编辑。

如 D1234567 。

数据:值项的具体值,它可以占⽤到64KB。

注册表详解

注册表详解1.注册表的定义:PC机及其操作系统的一个特点就是允许用户按照自己的要求对计算机系统的硬件和软件进行各种各样的配置。

早期的图形操作系统,如Win3.x中,对软硬件工作环境的配置是通过对扩展名为.ini的文件进行修改来完成的,但INI文件管理起来很不方便,因为每种设备或应用程序都得有自己的INI文件,并且在网络上难以实现远程访问。

为了克服上述这些问题,在Windows 95及其后继版本中,采用了一种叫做“注册表”的数据库来统一进行管理,将各种信息资源集中起来并存储各种配置信息。

按照这一原则,Windows各版本中都采用了将应用程序和计算机系统全部配置信息容纳在一起的注册表,用来管理应用程序和文件的关联、硬件设备说明、状态属性以及各种状态信息和数据等。

2. 注册表的文件:注册表不是一个虚无的概念,在操作系统中,它最终要落实在某些具有”物理实在”意义的文件上.实际上,注册表的数据正是存储在某些特定文件中,在windows 9x中,他主要包含在windows目录下的system.bat和user.bat两个文件中(windows me还包含了classes.bat文件).这些文件无法进行直接编辑,读取和修改注册表文件中的配置信息,必须通过windows文件夹下的regedit.exe程序来进行,所以regedit.exe程序就被称为”注册表编辑器”但在windows2000/xp/vista下的注册表文件,都被称作”配置单元”,所谓的配置单元,其实就是注册表中的一组项,子项,和值,所有的配置文件(除了HKEY_CURRENT_USER以外)都位于windows\system32\config\文件夹中, HKEY_CURRENT_USER的配置文件位于windows\profiles\username\文件夹中,其中最重要的个文件没有扩展名,他们分别是:DEFAULT,SAM,SECURITY,SOFTWARE,SYSTEM; .SAV后缀的文件为注册表的备份文件. .EVT 文件为系统日志文件.4.注册表的结构:注册表中的信息纷繁复杂,但是注册表对配置信息的组织结构确实层次分明的:打开注册表编辑器,左边窗格中的”我的电脑”下面显示的五大分支称为”预定义项”也就是我们常说的”根键”.”预定义项”代表了注册表一个主要部分的项.五大预定义项各自包括若干”项”,”项”下面又包含众多的”子项”,”子项”下面又包含众多的”子项”子向右边的窗口里包含若干的”值项”,也就是我们常说的”键值”注册表的结构如图5. 注册表的数据类型:注册表的值项包含多种不同的数据类型,WINDOWS XP的早期版本注册表只有三种键值的数据类型:字符串,二进制值和双字节值; windowsxp的晚期版本\2003增加到5种; VISTA/WINDOWS7又增加了一个QDWORD(64位)类型,实际的数据类型还要多很多,知识系统不允许我们来创建.*. 字符串值: 类型:REG_SZ*. 二进制值: 类型:REG_BINARY*. DWORD值: 类型:REG_DWORD*. 可扩展字符串值: 类型:REG_EXPAND_SZ*. 多字符串值: 类型:REG_MULTI_SZ6. 注册表预定义项拆解:注册表有五大预定义项,各自包含了不同的内容,同时彼此之间又有很大的紧密联系,了解五大预定义项包含的内容和其下面的主要项的功能,对于从整体上理解注册表的应用很有帮助.一.H KEY_CLASSER_ROOTRoot预定义项包含了启动应用程序所需的全部信息,其中包括:1.所有扩展名以及应用程序和文档之间的关联信息.2.所有驱动程序的名称3.当做指针的字符串,指向他们代表的实际文件4.类标识CLSID预定义项ROOT下面的项非常多,但是不要担心有多么的复杂.实际上,在这么多项中,大部分的项结构是一样的.1.*项这是HKEY_CLASSER_ROOT非常特殊的一项,*代表应用于所有文件类的定义,比如安装了WINRAR,后所有文件的右键菜单都有”添加到压缩文件”与之关联,如果按一般的方法去与所有文件关联,那就太麻烦了,而*项就具有简单完成关联所有文件类型的功能,只要在此项下添加类定义信息,可应用于所有类型的文件.2.扩展名项(如.bat等)HKEY_CLASSER_ROOT中最主要也是最多的想就是形如.bat .avi .bmp等扩展名项,以及它们所代表的batfile avifile bmpfile等类定义项,这两种项相互配合,完成对系统中所有文件扩展名的识别以及对此种扩展名文件的类型的定义(图标,用什么程序打开等).3.类定义项(batflie等)类定义项的名称必须和扩展名相的默认值定义的相同.否则它们就会直接失去联系.也就无法完成对文件的关联定义了.4.类定义项下的Defaulticon子项(例如batflie\Defaulticon):该类文件图标的路径和文件名.5.类定义项下的shell\open子项OPEN子项用来描述关联程序的显示名称,比如右键的”打开””编辑”等默认值缺省时,系统会自动将其程序的名称信息显示为打开,为不是OPEN如果设置.OPEN 下面的子项是COMMAND子项,用来关联指定打开该类型文件软件的路径.如果路径是长文件名(超过8个字符)则应该用””括起来,比如: “%SystemRoot%\system32\SoundRecorder.exe”如果关联的程序在WINDOWS文件夹, windows\SYSTEM32文件夹或者windows\SYSTEM内的话,则省略其路径,如C:\WINDOWS\NOTEPAD.EXE在与文件关联的话可直接写成”NOTEPAD.EXE”6.CLSID(类标识符)项:在注册表中,经常会看到长串字符的子项和值,比如:{00209FF-0000-00000-C000-xx-000000000046}它们都指向HKEY_CLASSER_ROOT\CLSID分支,既”类标识符”子项.这些CLSID究竟有什么用,可以做个试验:在桌面上建立一个文件夹,命名为控制面板.{21EC3AE2020-A-1069-A2DD-08002B30309D},可以发现文件夹变成了控制面板的图标,双击可以打开控制面板,这就是CLSID的功能,在WINDOWS中应用程序,控件,WINDOWS部件,编译器等几乎所有的项目都有他自己的CLSID, CLSID是某个不见于操作系统的连接,而且每一个程序的CLSID的值都是唯一的,,这样就可以保证此类文件的请求总是连接到改程序上面.7.DIRECTORY, DRIVE, FOLDER项(文件夹项)文件夹其实是一种特殊的文件对象,也需要关联程序才能对其操作,在ROOT根键下,关于文件夹的项目有3个,在操作时很容易混淆,下面是各项分别代表的文件夹类型(以上三个子项一般不要改动,了解一下即可):DIRECTORY: 仅作用于一般文件夹.(C:\windows; D:\穿越火线.等等)Drive: 仅作用于驱动器.(A: E:等)Folder: 作用与所有文件夹(以上两种以及,回收站,我的电脑,控制面板这样的特殊文件夹)以上三个项的结构和”类定义项”相同,我们可以为他们设置关联程序以及默认图标.二.H KEY_CURRENT_USER该预定义项包括了当前登录用户的配置信息,用户的文件夹,屏幕颜色和控制面板的设置都存储在这里,这些信息与用户的配置文件相关联.HKEY_CURRENT_USER(以下缩写为HKCU)包含如下主要的项:1.HKCU\Appevent项:Appevent项及其子项定义了系统特定的时间的名称已经发生该事件时的声音提示.HKCU\Appevent\Schemes下有两个子项APP(系统附带声音方案的具体设置)和NAMES(系统附带和用户自定义的声音方案)2. HKCU\console项:定义了命令提示符(CMD窗口)的一些特征.3. HKCU\Control panel项:里面配置的内容很多,全部是控制面板内的大部分设置,都保存在此项中,包括扶住功能选项,显示器,鼠标,屏保等信息.4.HKCU\Environment项:系统以及其他用户的临时文件存放目录5.HKCU\EUDC项:保存当前用户的字库用户使用造字程序所造的字库的位置信息保存在这个项的子项键值中.6.HKCU\Identities项:OUTLOOK配置信息.7.HKCU\KEYboard Layout项系统键盘的布局信息8.HKCU\PRINTERS项:打印机的配置信息9.HKCU\Sessioninformation项:该项下面有一个”PROGRAMCOUNT”键值项,设置为0偶可以禁止所有登录用户运行的程序数量.10.HKCU\sofeware项:包含了系统附带的各种软件以及安装在电脑中的其他软件的设置信息,都保存在这里,是应用最多的项之一.三.H KEY_LOCAL_MACHINE:该预定义项包含了特定于计算机的配置信息(用于任何用户),一下缩写为HKLM,他有5个独立的项.1.HKLM\HARDWARE项:其中包含了含有计算机硬件信息的子项,在每次重启系统时, HARDWARE项都将被重新创建,这样就很容易向系统中添加新硬件了,用户对此项的修改没有任何的意义也不会生效.2.HKLM\SAM项:这是一个关于安全账号管理的项,其中存储着用户信息和域的信息,无论哪种注册表,SAM中的信息都是不可访问的.3.HKLM\SECURITY项:这里的信息与本地安全性和用户权限有关,其中也含有SAM项的备份,也是无法访问的.4.HKLM\SOFTWARE项:包含了已经安装的系统软件和用户软件信息,也是注册表中最经常用到的项.5.HKLM\SYSTEM项:包含了系统启动,设备驱动程序,服务,和WINDOWS配置有关的信息.四.HKEY_USERS:该项包含计算机上的所有以活动方式加载的用户配置文件,HKEY_CURRENT_USERS其实也算是HKEY_USERS的一个子项.(一下缩写为HKU).1.HKU\.DEFAULT项:此项的作用是未来将要创建的新用户将针对此项内的设置来生成新的配置文件,包括环境,屏幕,声音等多种信息.2.HKU\S-1-5-18等项:分别代表系统内的各个账户或者安全组的信息.HKU\S-1-3-0:对应ADMINISTRA TORS账户HKU\S-1-5-18: 对应CREATOR OWNER账户(操作系统使用的服务账户)HKU\S-1-5-19:对应当前登录到系统中的所有用户HKU\S-1-5-20:对应网络服务组(network和Network Service)HKU\S-1-5-21-XXXXXXXXXXXXXX-XXXXXXXX(根据每台电脑不同,数字也是随机的):对应当前正在使用的账户.五.H KEY_CURRENT_Config该预定义项包含有关本地计算机在系统启动时使用的硬件配置文件的信息.,若果当前计算机中只有一个硬件配置,则其中的数据是和HKEY_LOCAL_MACHINE 中一样.如果用户有建立新的硬件配置的话,则可以再这里反映出来.(一般用户使用中是不会有弟2个硬件配置的,故此项使用的很少).。

深入注册表之文件关联——文件关联认识篇

深⼊注册表之⽂件关联——⽂件关联认识篇深⼊注册表之⽂件关联——⽂件关联认识篇谈起Windows的注册表,⼤家⼀定不会陌⽣吧?由于它的“⾼深莫测”和易损性,使不少CFAN视它为“禁区”,更不乏谈“表”⾊变之⼠。

其实⼩弟以前也未尝不是如此,即使是经过了X次当机后(修改注册表的结果),也只得了这么⼀丁点经验。

为了不让更多的CFAN重蹈⼩弟的覆辙,就把这⼀丁点经验告知⼤家。

其实关于注册表的⽂章,在各⼤报刊杂志上⽐⽐皆是,但多以“修改密技”见长,本篇⾃然不会再叙,⽽是针对注册表中最重要也是最让⼈头痛的⽂件关联部分,介绍其基本结构及应⽤技巧。

什么是⽂件关联⽂件关联是什么?简单地说,就是单击不同类型⽂件时,在⿏标右键菜单上看到的关联项⽬。

对于已注册的⽂件,会以不同的图标显⽰它们,双击它时会启动不同的关联程序,⽽所有这些设置信息都存放在注册表中,因此,只要掌握其基本结构和各键值项的设置,就能随⼼所欲地定义⽂件关联了。

注:下⽂所涉及注册表内容,除作特别说明处,均适⽤于Win9x;⽂中所例⽂件和路径,请按本机实际设置做相应修改。

另外请及时备份注册表,以防不测。

⽂件关联的基本结构⾸先运⾏Regedit.exe(注册表的基本结构知识,请参考98年第1、12、24期有关⽂章,这⾥不在细述),其中第⼀项【HKEY_CLASSES_ROOT】(以下简称ROOT)便是存放⽂件关联信息的根键,细⼼的朋友会发现,它和【HKEY_LOCAL_MACHINE\Software\CLASSES】键下的内容完全⼀样,其实这是系统为了⽅便访问⽽设置的动态映射,对其中任何⼀个操作,效果都⼀样(下⽂以ROOT根键为准)。

下⾯就让我们看看它的基本结构。

⼀个基本的⽂件关联,通常由以下两⼤主键构成(各主键的层次关系,请仔细参照例图)。

⼀扩展名键(如图1)A.键名:由“.”(⽆双引号)加上相应扩展名构成。

如“.Bat”。

在ROOT根键中,可以看到许多这种类型的主键。

注册表的主要功能及工作原理

注册表的主要功能及工作原理注册表是Windows95/Windows98中非常重要的数据文件。

在中文Windows95下,维护、修复和恢复注册表是比较麻烦的。

在中文Windows98中,增添了一个“注册表检查程序”.从而使用户能够更容易地对注册表进行维护和恢复。

维护注册表,实际上就是要保护好System.dat和User.dat这两个文件。

这两个文件中存储的是计算机的所有硬件、软件和用户设置信息,它们都是隐藏文件。

如果这两个文件遭到破坏,轻则个别应用程序不能正常工作,重则可能导致系统崩溃。

“注册表检查程序”优化了System.dat和User.dat这两个文件并且可以防止它们在以后出现问题。

每当用户启动中文Windows98时,“注册表检查程序”首先自动优化用户的注册表。

如果它发现用户的注册表中包合有500KB或更多过期的串,则会删除它们,以缩小这些.dat文件的大小。

这样不仅可以使得文件更便于备份和存储,而且可以加快中文Windows98 的启动和关闭。

其次“注册表检查程序”自动扫描System.dat和User.dat文件,如果发现注册表存在问题时,就会自动将以前的备份内容重新写入注册表。

当每天第一次启动Windows98时,“注册表检查程序”会自动地备份System.dat和User.dat文件,并将它们存储在C:\Windows\Sysbackup文件夹(注:默认情况下该文件夹是被隐藏的)下的单个文件中。

默认情况下,“注册表检查程序”仅保留有5份系统启动成功的注册表内容,这些备份文件被压缩后保存在扩展名为.cab的文件中,其命名规则为rbxxxx.cab,其中xxx是备份编号,如000、001、002等。

笔者在写该文时,机器中5个备份文件的名称分别为:rb000.cab、rb002.cab、rb003.cab、rb004.cab、rb005.cab。

要注意的是,备份编号与备份日期是没有关系的。

注册表详解

注册表详解注册表详解1.注册表是什么注册表(Registry)是微软公司从Windows95系统开始,引入用于代替原先Win32系统里.ini文件,管理配置系统运行参数的一个全新的核心数据库。

它与老的win32系统里的ini文件相比,具有方便管理,安全性较高、适于网络操作等特点。

注册表整合集成了全部系统和应用程序的初始化信息。

它存储下面这些内容:(1)软、硬件的有关配置和状态信息,应用程序和资源管理器外壳的初始条件、首选项和卸载数据;(2)计算机的整个系统的设置和各种许可,文件扩展名与应用程序的关联,硬件的描述、状态和属性;(3)计算机性能纪录和底层的系统状态信息,以及各类其他数据。

2.编辑注册表的工具---Regedit.exe。

Regedit可对注册表进行添加、修改主键、键值,备份注册表,局部导入导出注册表等操作。

启动方法:开始菜单→运行,所在对话框中输入regedit (WINNT输入REGEDIT32.EXE)并点确定。

3. 注册表的结构在Windows中,注册表由两个文件组成:System.dat和User.dat,保存在windows所在的文件夹中。

它们是由二进制数据组成。

System.dat包含系统硬件和软件的设置。

User.dat保存着与用户有关的信息,例如资源管理器的设置,颜色方案以及网络口令等等。

注册表编辑器与资源管理器的界面相似。

左边窗格中,由“我的电脑”开始,以下是六个分支(WINNT只有前面5个),每个分之名都以HKEY开头,称为主键(KEY),展开后可以看到主键还包含次级主键(SubKEY)。

当单击某一主键或次主键时,右边窗格中显示的是所选主键包含的一个或多个键值(Value)。

键值由键值名称(Value Name)和数据(Value Data)组成。

主键中可以包含多级的次级主键,注册表中的信息就是按照多级的层次结构组织的。

注册表中各分支的功能OLE(Object Linking and mbedding--对象连接与嵌入)4.注册表中的键值项数据注册表通过键和子键来管理各种信息。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档