Explorer中的选择性上下文菜单

时间:2013-11-04 15:08:08

标签: windows winapi c#-4.0 contextmenu tortoisegit

我想添加一个上下文菜单选项,以便更深入地集成我的某个程序。但是,我讨厌在这个使用频繁的菜​​单中有20多个项目 - 所以我不会让我的最终用户忍受这个。

我知道上下文菜单可以按文件类型自定义,但Tortoisegit可以自定义通用文件夹。

Tortoisegit能够检测何时在Tortoisegit控制的文件夹中打开上下文菜单并显示带有其他项目的不同菜单。

这是怎么做到的?这是由Tortoisegit以某种方式在后台运行,还是上下文菜单的注册表设置或其他什么来完成的?

1 个答案:

答案 0 :(得分:1)

使用注册表设置完成。运行regedit.exe并导航到HKCR\Folder\shellex\ContextMenuHandlers。你会在该列表中找到Tortoise的CLSID。 HKCR\*注册表项同样特殊,适用于任何文件。

强烈建议不要在C#中编写shell扩展,否则无法将CLR注入进程是不可通知的。