我想添加一个上下文菜单选项,以便更深入地集成我的某个程序。但是,我讨厌在这个使用频繁的菜单中有20多个项目 - 所以我不会让我的最终用户忍受这个。
我知道上下文菜单可以按文件类型自定义,但Tortoisegit可以自定义通用文件夹。
Tortoisegit能够检测何时在Tortoisegit控制的文件夹中打开上下文菜单并显示带有其他项目的不同菜单。
这是怎么做到的?这是由Tortoisegit以某种方式在后台运行,还是上下文菜单的注册表设置或其他什么来完成的?
答案 0 :(得分:1)
使用注册表设置完成。运行regedit.exe并导航到HKCR\Folder\shellex\ContextMenuHandlers
。你会在该列表中找到Tortoise的CLSID。 HKCR\*
注册表项同样特殊,适用于任何文件。
强烈建议不要在C#中编写shell扩展,否则无法将CLR注入进程是不可通知的。