c-如何使Windows触摸板像Mac触摸板一样工作



我正在尝试使用WINAPI为windows编写一些东西,这样我就可以让触摸板做mac触摸板做的任何事情。

我已经使用Spy++检查了两个手指敲击等向操作系统发送的WM消息,但发现它只发送那些加号/减号:

WM_LBUTTONDOWN
WM_LBUTTONUP
WM_MOUSEHOVER
WM_MOUSEHWHEEL
WM_MOUSELEAVE
WM_MOUSEMOVE
WM_RBUTTONDOWN
WM_RBUTTONUP

当我试图看看用3或2个手指点击时会发生什么时,它并没有发送任何特定的信息,除非我稍微移动了一下。

首先,我想从这个开始:

当5个手指向下显示桌面时(如win+D所做的)。

  • 如何编写(驱动程序?)可以诊断5个手指同时触摸触摸板的东西?诅咒没有操作系统消息,但我可以对现有消息进行一些独特的组合,并通过该diganose进行处理。

  • 如果我需要编写一个驱动程序,我可以为大多数触摸板通用吗?我可以作为附加组件吗?

  • 如果你能发布一个你熟悉的写windows驱动程序的好教程,请,因为我对此一无所知。

  • 我还需要考虑其他因素吗:

1. Diagnose 5 fingers mouse events.
2. Make a thread in Explorer on startup that handle those new mouse messages.

提前感谢

鼠标输入通知

简而言之,你做不到。

首先,有一些触摸板只能检测到1个手指触摸,对于那些可以检测到多个触摸的人,他们的驱动程序会为您进行翻译。

Windows对读取多个触摸输入没有任何固有的支持——它依赖触摸板驱动程序来提供这些支持。

您可以通过编写自己的触摸板驱动程序(可能从Linux触摸板驱动和Windows驱动程序开发工具包开始)来实现某些设备的目标,但这绝非易事。

而且,您需要为您想要支持的每个触摸板设备(Synaptics、Alps Electric、Cirque等)执行此操作

只有在那之后,您才能继续在Explorer等应用程序中实现对触摸板操作的反应。

最新更新