我正在寻找一种在 C++ 中模拟鼠标和键盘输入的方法。我正在寻找一个可以帮助我实现这一目标的跨平台库。有什么建议么?
目标平台是桌面平台……仅限 Linux、Mac 和 Windows。
我正在寻找一种在 C++ 中模拟鼠标和键盘输入的方法。我正在寻找一个可以帮助我实现这一目标的跨平台库。有什么建议么?
目标平台是桌面平台……仅限 Linux、Mac 和 Windows。
不,输入设备模拟非常特定于平台,即使在单个平台上也很挑剔。对于任何目的,它都不是一种强大的技术,因此您将找不到好的库来实现它。
一旦你拥有了基本的 API,最困难的部分就是让设备看起来对操作系统来说是真实的。您希望以适度高的频率发送逐渐的鼠标移动更新,就像鼠标一样,并且在点击和按键之间有合理的延迟。执行事件时间线和制作基本几何图形可能会得到 SDL 等游戏库的帮助。
如果您忽略时间,操作系统可能会减少鼠标运动、去抖动按钮、重新排列运动和点击的顺序、在使用触控板时忽略按键等。我差不多 10 年前就编写了这样一个工具。
我开了这样一个图书馆,也许你想看一眼。 https://github.com/pythoneer/XInputSimulator
它处于早期状态,并且在编写时有点错误。但我希望它越来越好:)
尽管输入库是特定于平台的,GUI 也是特定的,但是有一些抽象库可用于 wxWdigets 和 Qt,它们隐藏了复杂性,对于输入,我发现这个非常有趣