WM_TOUCH vs WM_POINTER

时间:2014-05-21 18:00:00

标签: winapi touch multi-touch windows-messages wm-touch

我应该使用哪一个?我只使用Windows 8.x,因此我并不关心WM_POINTER与Windows 7等不兼容的事实。我也不关心手势;只是原始的接触。 WM_POINTER的唯一明显优势似乎是它统一了触摸和鼠标输入(但是使用WM_TOUCH很容易解决,因为可以使用GetMessageExtraInfo()检查鼠标事件)。易用性也不是问题;我已经使用WM_TOUCH了,我只是想知道是否应该切换到WM_POINTER。我最关心的是延迟和效率(与游戏相关的应用程序)。我无法判断WM_POINTER是否是一个带有额外开销的WM_TOUCH包装器。有什么意见吗?

1 个答案:

答案 0 :(得分:2)

WM_TOUCH已过时。仅使用WM_POINTER。 (WM_TOUCH实际上是WM_POINTER上的包装。)

GetMessageExtraInfo也是众所周知的脆弱。在调用GetMessage之后,你必须立即将它命名为 ,否则你会冒中间函数调用进行COM调用或执行其他操作导致调用GetMessage的风险。