扩展外部应用程序的菜单

时间:2010-07-03 17:47:24

标签: c++ windows winapi menu

我目前正在为第三方应用程序编写插件。
由于插件框架没有提供任何访问UI的方法,我现在尝试通过WinAPI手动执行此操作。

更具体地说,我想在“文件”菜单中为我的插件添加自定义菜单项。

我第一次尝试使用 FindWindow 来检索主窗口的句柄并且使用 GetMenu 不成功,因为 GetMenu 只是返回NULL

我的下一步是使用 EnumChildWindows 并搜索具有“& File”文本的孩子(我真的不喜欢这种方法,因为它使本地化非常糟糕)。但是,我只找到了菜单项的句柄,但我需要相应的 HMENU 才能使用AppendMenu,不是吗?
简单地投射不起作用并导致“无效的菜单句柄”。

实际上可以实现我的目标吗?怎么样?

提前感谢您的想法!

1 个答案:

答案 0 :(得分:1)

很可能只是不是HMENU。自定义菜单实现是常见的,一个Window提供的日期和不灵活。例如,比较Windows Forms的MenuStrip。

当然,这会给你的方法带来一个巨大的漏洞。