注册表中储存文件关联信息的一些位置:
【前三项】(1)处存放的是本机文件关联的备份,会自动同步后面两处的信息。但实际操作时有些信息只有(1)处有,所以建议在枚举本机文件关联时以此处为准,以其它两处作补充。以下所说的“Classes目录”指代(1)(2)(3)中的任意一个,(2)是现行用户的,(3)是本地机器的,不建议选(1)。
【后两项】在尝试打开文件时或选择打开方式后会自动生成。以下所说的“FileExts目录”指代(4)(5)中的一个,按需选择。
【(默认)】值为ProgID,对应目录下的同名子项(下称程序标识符)。
【DefaultIcon】在没有(默认)的值时会用它的值来指示这类文件的图标。
【NullFile】有这一项表示新建时新建一个空的文件,与下面二选一。
【FileName】它的值是新建时 需要建立的文件 的地址,这文件一般在C:\WINDOWS\SHELLNEW下(没试过)。
如果要在新建菜单中显示这种文件,必须要有文件的类型名称
【(默认)】值是这类文件的类型名称(在文件浏览器中显示的“类型”,比如平时看到的“文本文档”,不写的话会显示“XXX 文件”)
【(默认)】值是这类文件的图标。
“菜单项”指的是右键菜单项,一般为“open”,也可以自定义字符(中文也行)。它在MUIVerb不存在或值为空时作为右键菜单的标题。这些右键菜单先显示“菜单项”为open的项,然后显示为英文的项,最后显示为中文的项。
【MUIVerb】值不为空的话就会覆盖“菜单标题”,但显示时还是按照“菜单标题”排序。
【icon】值是右键菜单中的图标的地址。(在Win7测试可以,XP不知道为什么不显示)
【(默认)】值是被调用的命令行。
【MRUList】右键菜单中“打开方式”子菜单的排列顺序,就是下面这些。
【a】值是打开文件的程序的名称(包括扩展名)。可以没有,但有的话,MRUList要出现a这个字母。
【b】同上。
【c】同上。
以此类推……
备注
ProgIDs,programmatic identifiers,程序标识符。该子项下存放着1个或多个程序标识符,作用不太清楚。
【Progid】用户选择的程序的程序标识符。
添加注册表:
REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]
删除注册表:
REG DELETE KeyName [/v ValueName | /ve | /va] [/f]
例子:""%%SystemRoot%%\system32\NOTEPAD.EXE" %%1"