为特定扩展名(不是文件types)添加一个Windows Shell上下文菜单项

要添加一个Windows shell的上下文菜单,让我们说.txt文件 – 如果HKEY_CLASSES_ROOT (或HKEY_CURRENT_USER\Software\Classes.txt 扩展名无关紧要)具有默认值( 文件typestxtfile – 添加命令HKEY_CLASSES_ROOT\txtfile\shell\yourcommand (和当然在HKEY_CLASSES_ROOT\txtfile\shell\yourcommand\command ),然后你去。

但是,让我们假设.txt 扩展名具有默认值Notepad++_fileNotepad++_file可能是许多其他扩展名文件types ,所以如果将命令添加到HKEY_CLASSES_ROOT\Notepad++_file ,则对于与Notepad ++关联的每个扩展名都会显示此命令。

所以, 问题是 :如何在不改变文件types的情况下 ,为一个特定的EXTENSION添加菜单条目?

PS:我不想只复制文件types,因为将来对原始文件types的更改不会影响重复的文件types。

干得好:

 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\your custom app] @="Open with your custom app" "icon"="C:\\Windows\\notepad.exe,0" "AppliesTo"=".nfo" [HKEY_CLASSES_ROOT\*\shell\your custom app\command] @="C:\\Windows\\notepad.exe \"%1\"" 

"AppliesTo"=".nfo"这一行"AppliesTo"=".nfo"这个技巧。

在Windows 10上完美工作。

它适用于每个文件扩展名,无论是否有与该扩展名关联的应用程序 。 这样做侵入性较小,在注册表中留下很小的空间。

比较添加菜单项仅适用于特定文件类型的Windows上下文菜单


编辑:

如果您想将该命令应用于多个分机,请使用:

 "AppliesTo"="System.FileName:\"*.nfo\" OR System.FileName:\"*.log\"" 

Credit: https : //superuser.com/questions/183785/windows-7-context-menu-for-folders-if-folder-contains-certain-filetypes