深入注册表之文件关联——特殊键设置与应用篇
深入注册表之文件关联——特殊键设置与应用篇(1)
大家好!上次介绍了在注册表中文件关联的基本结构与应用实例,不知各位“修炼”的怎么样了(别告诉我当机X次了)。为了使你更好地掌握文件关联,这次介绍一些特殊键和类标识符键的设置与应用技巧。好!现在就开始吧。
首先说明一下,这里的“特殊键”并非指这些键在注册表中的结构特殊,而是使用它们可以完成一些特殊的功能与设置(既通常说的“秘技”)。
        新建文件
在鼠标右键的“新建”菜单中,可以看到系统为我们提供了一些新建项目(如图1),这样可以快速地创建文件。但是,我们能否在“新建”菜单中增加其它文件类型呢?答案是肯定的。例如新建.Bat文件,方法如下:
单击扩展名键“.BAT”(扩展名键是什么还没忘吧),在其下新建一主键“ShellNew”,再单击该主键,新建一“字符串值”键,其键名和键值可以是下表中之一:
键名
键值
功能
NullFile
无需键值
新建一空文件
FileName
摸板文件的路径。如“C:\Sample\abc.bat”
新建一指定的摸板文件
Command
程序和摸板文件的路径,如“C:\ C:\Sample\abc.bat”
新建一指定的摸板文件,并用指定的程序打开。
        技巧:看到C:\Win\ShellNew文件夹了吗?你可以把摸板文件放在此文件夹里,这样在指定摸板文件时,就不必再指定路径了。
注:(1)所指定的摸板文件必须存在。
2)需新建的文件类型,必须是“基本结构”方式,既必须有扩展名键、标识键,且标识键的默认键值不能缺省,否则无法新建此类型文件。另外也可通过删除相应扩展名键下的“ShellNew”主键,来删除暂时不用的新建项目。
        显示、隐藏文件扩展名
大家知道,通过【我的电脑查看文件夹选项】(属猴的人2013年运程大全及破解Win95Win98略有不同)可以定义是否显示已注册文件的扩展名,但这是作用于所有文件的,而在实际操作中,有时只想显示或不显示某一类型文件的扩展名,那么可通过下面操作实现:

例如修改“.Bat”文件,首先单击标识键“Batfile”,在其下新建一“字符串值”,键名可以是下表中之一(均无需键值)。
键名
功能
AlwaysShowExt
始终显示其扩展名
NeverShowExt
始终不显示其扩展名
 
        限制文件关联的修改
在通过【我的电脑查看文件夹选项文件类型】(以下简称“类型菜单”)修改文件关联时,有时会遇到这种情况,既对某些文件无法编辑或删除,如“.EXE”、“.COM”文件(如图3所示)。其实这是“微软”为防止普通用户在“类型菜单”中无意删除重要文件关联,而设置的保护措施。而我们利用此功能,正好可以防止“外来客”的修改(当然是要删掉)。具体操作如下:
单击需修改类型文件的“标识键”,如“Batfile”,在其下新建一名为“EditFlags”的“二进制值”键(如果没有的话),因该键有多种值,下表只列出最常用键值:
键值
梦到鞋丢了限制的功能
10 00 00 00
删除
08 00 00 00
编辑
01 00 00 00
瓷砖十大名牌排行榜
*不显示此类型文件
80 00 00 00 
编辑状态下“删除”
40 00 00 00
编辑状态下“编辑”
20 00 00 00
编辑状态下“新建”
00 02 00 00
编辑状态下“更改图标”
00 04 00 00
编辑状态下“设为默认值”
        *不显示此类型文件:既在“类型菜单”中不予显示此类型文件。
:如需多重限制,可把各键值相加(10以上的数,应以十六进数制表示)。如“18 00 00 00”就
万美汐甄嬛传能同时限制“编辑”和“删除”功能;如需解除限制,直接删除“EditFlags”键即可。
        缩略显示图象文件

如果文件格式支持(既系统可识别的图象资源,如“.dll.bmp.ocx.cpl”文件等),可使这些文件显示成缩略图形式。以.Dll文件为例,打开【HKEY_CLASSES_ROOT\Dllfile\DefaultIcon,将其默认键值改为“%1”;现在打开WIN\SYSTEM文件夹,看看是不是多了不少好看的图标?用同样的方法可以使.BMP文件以缩略图显示(这和WIN98的“启用缩略图查看方式”不是一回事)。
        对所有文件的关联操作
安装了WinZip的朋友知道,对于所有文件,都有“Add to Winzip”与之关联,如果按一般方法,那真的要对“所有文件”关联了。其实在注册表中,已为我们准备了一个“*”主键(ROOT根键的首项便是),对它关联就等于对所有文件进行关联(“*”键与“标识键”的关联方法一样,这里就不再
细述其步骤了);另外通过【HKEY_CLASSES_ROOT\Unknown】主键,可以对所有尚未注册的文件进行关联操作(它与“标识键”关联方法也一样),例如系统默认的关联程序为“打开方式(E)”。
        对文件夹的关联操作
文件夹其实是一种特殊的文件对象,也需要关联程序才能对其操作。在注册表中,关于文件夹的主键有三个,在操作时很容易混淆(既在“类型菜单”中为什么出现两个“文件夹”),下面给出各主键的作用和区别之处:
企业物流成本管理Drive
 仅作用于驱动器(既A盘、C盘等)
Directory
仅作用于一般文件夹
Folder
作用于所以文件夹(包括以上两种和“回收站”、“控制面板”等特殊文件夹)
  另外,这三个主键的结构与“标识键”基本相同,你可以为它们设置不同的关联,还可以通过各键下的“DefaultIcon”主键设置文件夹的默认图标。
深入注册表之文件关联——特殊键设置与应用篇 (2)
  在注册表中,经常会看到长串字符的主键或键值,如{645FF040-5081-101B-9F08-00AA002F954E},其实它们都指向【HKEY_CLASSES_ROOT\CLSID】主键下的各分支,既类标识符键。这些类标识符定义了系统及文件的OLE和其它重要属性,可以说,在系统中几乎所以高级设置,都涉及到类标识符。当然,由于其所涉及范围过广,本篇不可能一一细述其结构与功能,在这里仅举几个修改实例(都是关于文件夹的)。
 在文件夹中创建特殊文件夹

首先说明一下,这里的特殊文件夹既回收站、控制面板、打印机等(并不是所有的特殊文件夹都能被创建)。现以回收站为例,下面是两种方法的步骤:
A. 
(1) 单击【HKEY_CLASSES_ROOT\CLSID】主键。
(2) 使用2022年新年祝福金句“命令,查字符回收站(其它特殊文件夹也可用此法搜索其类标识符)。
(3) 到后复制其类标识符键键名,本例为{645FF040-5081-101B-9F08-00AA002F954E}
(4) 任意打开一文件夹,再新建一文件夹,可任意取名。
(5) 将新建文件夹设置为系统只读属性(可用DOS命令ATTRIB.EXE文件管理器)。
(6) 打开此文件夹,建立文件DESKTOP.INI,输入以下字段:
[.ShellClassInfo]
CLSID=刚复制的类标识符键键名
(7) 保存文件,回到上一级文件夹,可看到该文件夹已成了回收站。
B. 
(1) 依次完成A中的1234步。
(2) 单击新建的文件夹,按F2键(既改名),在已取的文件夹名后面键入“.”(无引号),然后粘
贴刚复制的类标识符键键名。
(3) 确认后,可看到和A方法一样的效果。 
在【我的电脑】中创建特殊文件夹
大家知道,在【我的电脑】中,并不能象普通文件夹那样,随便新建文件夹,不过通过注册表就可以完成这一功能。现以创建回收站为例,其方法如下:
(1) 依次完成A中的123步。
(2) 打开【HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\ MyComputer\NameSpace】。
(3) 新建一主键,键名为刚复制的类标识符键键名(即A中第3步所复制的内容)。
(4) 回到【我的电脑】中,按F5键后(即刷新),可以看到已出现了回收站文件夹。
技巧:打开【HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\ DeskTop\NameSpace】主键,删除其下的回收站类标识符主键,可以隐藏桌面上的回收站文件夹。 
 创建我的文件夹”(仅适用于WIN98
安装了Office97Win98的朋友知道,在C盘根目录下有一个“My Documents”我的文档文件
夹,其实此文件夹最有意思的特点就是和普通文件夹的图标不一样。而我们何不模仿它,创建一个我的文件夹呢?(至少可以在朋友面前炫耀一下:这是我用C++……”)。下面是具体步骤:
(1) 单击【HKEY_CLASSES_ROOT\CLSID】键,新建一主键,键名可按类标识符的命名规则取之,{00000000-0000-0000-0000-000000000001}
(2) 单击其默认键,为其赋值,即描述文件夹类型,如可赋值为我的文件夹“My Folder”等。
(3) 再新建一主键,键名为“DefaultIcon”,单击其默认键值,定义欲显示的图标文件路径。
(4) 如果需要,可再新建一“Shell”主键,在其下可以设置与我的文件夹单独关联的程序
(具体步骤与普通文件标识键的“Shell”一样)。
(5) 好了!,现在就可以按上面在文件夹中创建特殊文件夹AB两种方法创建我的文件夹了。 
  结:终于唠叨完了(你能看到这,小弟很感动^o^)。这是小弟的出道之作,由于水平有限,文中不免有琐碎不当之处,还请多多指正。另外,盖茨老兄的Win2000即将粉墨登场,注册表的使命还将继续,如果你有新发现,别忘了告诉小弟和各位CFAN。再见!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。