Winapi WM_触摸与WM_指针

Winapi WM_触摸与WM_指针,winapi,touch,multi-touch,windows-messages,wm-touch,Winapi,Touch,Multi Touch,Windows Messages,Wm Touch,我应该用哪一个?我只使用Windows8.x,所以我不关心WM_指针与Windows7不向后兼容这一事实。我也不关心手势;只是关于原始接触。WM_POINTER唯一明显的优点似乎是它统一了触摸和鼠标输入(但这很容易使用WM_touch解决,因为可以使用GetMessageExtraInfo()检查鼠标事件)。易用性也不是问题;我已经在使用WM_TOUCH了,我只是想知道我是否应该切换到WM_指针。我最关心的是延迟和效率(与游戏相关的应用程序)。我不知道WM_指针是否是WM_TOUCH上的一个包装

我应该用哪一个?我只使用Windows8.x,所以我不关心WM_指针与Windows7不向后兼容这一事实。我也不关心手势;只是关于原始接触。WM_POINTER唯一明显的优点似乎是它统一了触摸和鼠标输入(但这很容易使用WM_touch解决,因为可以使用GetMessageExtraInfo()检查鼠标事件)。易用性也不是问题;我已经在使用WM_TOUCH了,我只是想知道我是否应该切换到WM_指针。我最关心的是延迟和效率(与游戏相关的应用程序)。我不知道WM_指针是否是WM_TOUCH上的一个包装器,它有额外的开销。有什么意见吗?

WM\u TOUCH
已过时。只使用
WM_指针
。(
WM\u TOUCH
实际上是
WM\u指针的包装器


GetMessageExtraInfo
也是出了名的脆弱。您必须在调用GetMessage后立即调用它,否则您将面临中间函数调用的风险,即进行COM调用或执行导致调用GetMessage的其他操作。

但是WM\u TOUCH会返回一个包含后续GetTouchInputInfo()的触摸事件数组,而WM_POINTER*表示每个触摸事件的单独消息以及相关的窗口过程调用。在多点触控的情况下,后者不是效率较低吗?@DisplayName您做错了。:)查看以一次检索一整套触摸信息。如果您是唯一的指针处理程序,则可以使用丢弃帧的剩余指针消息。什么是WM_指针?我在MSDN上找到的只是一系列消息ID,如“WM_POINTERACTIVATE”、“WM_POINTERUPDATE”等,它们是这个线程的主题吗?@TimLovell-Smith是的。