随着windows7 的发布,windows进入了多点的时代,从目前的情况来看可以最多支持10个点,那么我们怎样自定义windows 7的触摸消息呢?从多点触控说起。
通过自己漫长的google,到目前为止,开源社区中用于多点的多为TUIO,TUIO甚至在成为Flash的多点消息协议,那什么是TUIO呢,其实它只是一个基于UDP的传输协议,Flash的另类用TCP传,简单描述下可以自行google。当然TUIO并不是windows 的标准消息。window7 的多点消息是一套基于HID协议的多点触摸消息.Windows7的多点触摸消息并不像鼠标消息,鼠标和触摸消息是不同的,windows 貌似没有提供模拟触摸消息的API,模拟鼠标和键盘的倒是有,例如mouse_event等函数。但是用这些函数也有一些毛病,自从Vista之后windows里加入了UAC这种安全机制,如果应用程序用户不相同和不加过滤消息,有些应用程序是接收不到的(曾经在这个问题上吃过大亏)。
当然想避免这些问题是可以的,例如可以使用winio实现硬件级鼠标键盘模拟,或者熟悉驱动开发的,自己开发个虚拟鼠标键盘。多点触摸的消息模拟我就是通过(使用模拟多点触摸屏设备驱动)这种方式来实现的。当然如果自己有固件自己实现多点触摸的HID协议报告也是可以的。
写的不对的地方还多多指教。