有没有办法突破上下文菜单的 16 个条目限制?

Is there a way to get past the 16 entry limit for context menus?

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

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

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

我想使用此方法创建上下文菜单,但我确实知道 C/C++,如果需要的话,可能可以在那里实现一些东西。

更新:IContextMenu 界面可能会给我一个更好的方法来制作上下文菜单,但我仍然想使用注册表,因为我在 Python 中编写了代码来生成 .reg类似上面的文件。

更新:我在 HKEY_LOCAL_MACHINE 中尝试这样做,但它也没有用...

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

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

Here it is

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

Windows right click context menu items number limit