我想创建自己的文件扩展名并设置两种可对该文件执行的操作。
这是我创建的 .reg 文件:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.dls\]
@="DLSource"
[HKEY_CLASSES_ROOT\.dls\ShellNew]
"FileName"="source.dls"
"NullFile"="source.dls"
[HKEY_LOCAL_MACHINE\Software\Classes\DLSource\shell\]
[HKEY_LOCAL_MACHINE\Software\Classes\DLSource\shell\Open in DLI\command]
@="C:\\dl\\DLI.exe \"%1\""
[HKEY_LOCAL_MACHINE\Software\Classes\DLSource\DefaultIcon]
@="c:\\dl\\fav.ico"
[HKEY_LOCAL_MACHINE\Software\Classes\DLSource\shell\Compile with DLC\command]
@="C:\\dl\\DLC.exe \"%1\""
它工作正常,但这Compile with DLC
是默认设置,在上下文菜单中的位置高于Open in DLI
。我想将其设置为相反,我假设现在它是按字母顺序排序的。这是现在的图片:
答案1
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.dls]
@="DLSource"
[HKEY_CLASSES_ROOT\.dls\ShellNew]
"FileName"="source.dls"
"NullFile"="source.dls"
[HKEY_CLASSES_ROOT\DLSource\DefaultIcon]
@="c:\\dl\\fav.ico"
[HKEY_CLASSES_ROOT\DLSource\shell]
@="OpeninDLI"
[HKEY_CLASSES_ROOT\DLSource\shell\CompilewithDLC]
@="Compile with DLC"
[HKEY_CLASSES_ROOT\DLSource\shell\CompilewithDLC\command]
@="C:\\dl\\DLC.exe \"%1\""
[HKEY_CLASSES_ROOT\DLSource\shell\OpeninDLI]
@="Open in DLI"
[HKEY_CLASSES_ROOT\DLSource\shell\OpeninDLI\command]
@="C:\\dl\\DLI.exe \"%1\""
不要在键中使用空格。使用和shell\commandname
代替,并设置它们的shell\Compile with DLC
shell\Open in DLI
shell\CompilewithDLC
shell\OpeninDLI
(默认)值转换为您想要显示的实际字符串。
要指定默认操作,请设置ProgID\shell
键的(默认)值到相应的命令子键。因此,在这种情况下,您需要设置(默认)DLSource\shell
的值OpeninDLI
。
除了直接编辑注册表之外,还可以考虑使用类似文件类型管理器反而。