有没有办法超过上下文菜单的16项限制?

时间:2017-02-13 20:38:18

标签: windows explorer windows-shell

我正在尝试通过使用Explorer提供的“ExtendedSubCommandsKey”接口添加级联上下文菜单。但是,当我添加更多项目时,我注意到我可以在单个资源管理器上下文菜单中放置的项目数量在16处被截断。我已经尝试用数字作为前缀,以便它们按顺序显示

这是我用来安装所有菜单键的.reg文件:http://pastebin.com/DeEXRqfK

它应该提供3个菜单(个性化,配置,管理),但它只提供2个,第二个缺少一些项目。我可以提供截图。

我想使用这种方法来创建上下文菜单,但我知道C / C ++,如果需要,可能会在那里实现。

更新:IContextMenu接口可能会给我一个更好的方法来制作上下文菜单,但我仍然想使用注册表,因为我已经用Python编写代码来生成像上面那样的.reg文件。

更新:我尝试在HKEY_LOCAL_MACHINE中执行此操作,但它也无效...

更新:尝试在Visual Studio中实现IContextMenu接口,它真的很复杂。再一次,我真的很想使用注册表。

2 个答案:

答案 0 :(得分:0)

好吧,我从来没有找到一个不使用COM的完整/可行的解决方案,所以我决定编写自己的上下文菜单制作者。它允许您使用.yml文件编写上下文菜单,并允许您将它们嵌入到Windows资源管理器中。它并不完全完美,但它不使用COM,因此非常简单。

Here it is

答案 1 :(得分:0)

当项目超过一定数量时,我遇到了同样的问题。 例如,我有4个项目,每个项目都有一个包含4个命令的子菜单。 仅前3个项目显示子菜单,而最后一个不显示子菜单。

Windows right click context menu items number limit