gpt4 book ai didi

C++ GetAsyncKeyState 和 GetCursorPos 与 Windows 消息传递

转载 作者:行者123 更新时间:2023-11-28 06:42:48 25 4
gpt4 key购买 nike

我正在开发一个涉及远程控制的应用程序。键盘和鼠标状态每秒更新约 100 次,保存在数组中,在 Internet 上发送并复制。需要完美的再现时机。从现在开始,我只编写了键盘部分的代码,实际上它比 Windows 消息传递更容易编程。我所要做的就是在主机上每 9 毫秒调用一次 GetAsyncKeystate,然后在客户端上每 9 毫秒调用一次 SendInput 以获得完美的计时。奖章的另一面是,我将不得不手动检查主机窗口是否突出显示,如果不是,则避免调用 GetAsyncKeyState。但是现在我要编写鼠标部分的代码,我对使用什么方法有疑问,因为即使没有窗口消息传递,也很难实现鼠标的完美计时。这就是为什么我要问比我更有经验的程序员:在这种情况下,是组合使用 GetAsyncKeyState 和 GetCursorPos 更好,还是使用 Windows Messaging 更好?两者的优点和缺点是什么?提前致谢。

最佳答案

您需要使用 Windows Hook 。参见 SetWindowsHookEx及相关文件。这也可以用于键盘事件。

在最近的 Windows 版本中,还有一种更新的异步输入捕获技术可用,我现在忘记了它的名字。谷歌也是如此。

编辑:

我现在想起来了:另一种技术称为事件 Hook 。查看SetWinEventHook功能。

关于C++ GetAsyncKeyState 和 GetCursorPos 与 Windows 消息传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25634127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com