在Windows 10中,如何使用挂钩检测触摸输入事件?

在Windows 10中,如何使用挂钩检测触摸输入事件?,windows,winapi,touch,gesture,Windows,Winapi,Touch,Gesture,我不知道如何使用钩子检测触摸屏显示器上任何位置的触摸事件。这可能吗?这可能不是您想要的,但有几种方法可以设置挂钩: SetWinEventHook(活动辅助功能挂钩)。优点:是一种受支持的从Windows获取事件的高级方法。缺点:会降低应用程序的速度,尤其是在运行“上下文外”钩子时 SetWindowsHookEx。优点:非常低级的应用程序挂钩。缺点:不支持脱离上下文的钩子,因此您需要编写自己的IPC,有时也不可靠(例如,有时您会错过命令提示符中的事件) 通过查看第一个API,我没有看到任何特定

我不知道如何使用钩子检测触摸屏显示器上任何位置的触摸事件。这可能吗?

这可能不是您想要的,但有几种方法可以设置挂钩:

  • SetWinEventHook(活动辅助功能挂钩)。优点:是一种受支持的从Windows获取事件的高级方法。缺点:会降低应用程序的速度,尤其是在运行“上下文外”钩子时
  • SetWindowsHookEx。优点:非常低级的应用程序挂钩。缺点:不支持脱离上下文的钩子,因此您需要编写自己的IPC,有时也不可靠(例如,有时您会错过命令提示符中的事件)
  • 通过查看第一个API,我没有看到任何特定于touch的内容(尽管我鼓励您使用最新的Windows SDK并查看不同的事件)。但是,您可以简单地查找光标位置的变化,以了解用户最近触摸的位置

    第二个API可能会提供您想要的控制类型,因为您可以使用WH_CALLWNDPROC钩子捕获触摸事件。但同样,如果窗口将自己标记为触摸感知,则窗口仅接收触摸相关消息。因此,即使这样也可能做不到您想要的。

    允许您监视任何类型的输入。不过,这相当于解析出您需要的零碎信息。但如果你试图与体制抗争,这是意料之中的事。