SetWindowsHookEx,鼠标点击不触发上下文菜单/菜单上的回调

问题描述

我正在编写一个应用程序来捕获 Excel 2016 及更高版本中的鼠标点击(这不是键盘记录器)并捕获在功能区栏中单击的菜单

我使用 SetwindowsHookEx() 来挂钩鼠标捕获(挂钩到我的应用程序)。功能正常:

    using (Process curProcess = Process.GetCurrentProcess())
    using (ProcessModule curModule = curProcess.MainModule)
    {               
        var result =  SetwindowsHookEx(WH_MOUSE_LL,proc,GetModuleHandle(curModule.ModuleName),0);
    }

但是当我尝试从功能区单击任何菜单(如下面附加的菜单)时,回调似乎没有被触发。

image

我在 Google 上搜索过,但找不到与我的问题相关的任何主题

我也尝试过使用 Spy++,只有在“消息”选项下单击“相同线程的窗口”或“相同进程的窗口”复选框时,才能看到它捕获 WM_LBUTTON[UP,DOWN]。我希望它不使用 SetwindowsHookEx()

image

谁能指导我正确的方向?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...