如何发现Windows上下文菜单项调用的方法?

时间:2010-08-26 16:55:27

标签: windows winapi

在干净的桌面上单击鼠标右键时,将打开上下文菜单。 每个项目都有一个方法调用。 要以编程方式调用这些方法,首先我需要知道我想要哪一个。 IIRC有一个有用的工具,但我不记得它的名字。

2 个答案:

答案 0 :(得分:2)

你不能在另一个进程中调用这样的方法。您可以尝试注入上下文菜单通常使用SendMessage生成的WM_COMMAND消息。使用Spy ++找出该消息可能是什么(如果存在)。

答案 1 :(得分:1)

使用Spy ++查找句柄并使用SendMessage / PostMessage。它将类似于:

hwnd = FindWindow(...)
hmenu = GetMenu(hwnd)
hsubmenu = GetSubMenu(hmenu, 0)
menuid = GetMenuItem(hsubmenu, 1)
SendMessage(hwnd, WM_COMMAND, menuid, 0)