我买了一个物理按钮并将其连接到我的计算机上,使用 Arduino 它通过 USB 串行与我正在编写的 C++ 程序进行通信。现在我想让按钮模拟我电脑上的按键,这样我就可以将它用作我玩游戏的替代控制器。
如果您不熟悉 Arduino,请不要介意,我的问题完全在于 C++
解决方案非常简单,基本上可以归结为使用 SendMessage 到一个带有击键的窗口,或者许多替代方法,如 sendKeys 等等。
我已经尝试过每个可以处理此类事情的库或 Windows 函数,但它们都没有真正模拟键盘按下的击键。
到目前为止,我尝试的所有东西都适用于记事本和 Chrome 等许多程序,但没有一个适用于不听 Windows 消息来处理按键输入的游戏。
我的猜测是这些游戏使用 GetAsyncKeyState 以直接方式与物理键盘通信。
我该如何解决这个问题?什么 API 提供了这样的功能?
我在这里需要一些非常低级别的东西,甚至可能是一个模拟新键盘的程序,所以 Windows 认为我已经插入了一个物理键盘。
这对我很有帮助,我已经多次遇到这个问题,并且在不久的将来我会在其他项目中继续遇到它。
我希望有人可以帮助,谢谢!