SendKeys 替代品?

SendKeys alternatives?

我创建了一个小键盘应用程序,该应用程序保持在顶部,但不会获得焦点,因此在触摸屏上它会通过 SendKeys 将您按下的任何键转发到活动应用程序。

它与我尝试过的每个应用程序都完美配合...当然,除了我实际需要它使用的那个是销售点应用程序。 POS 应用程序允许用户在键盘上输入商品代码,但它没有适合触摸屏的键盘,所以这就是为什么我要为其创建一个外部键盘(因为我无权访问 POS 应用程序代码)。

当你第一次尝试时它确实有效,但后来它就很零星了。直接使用键盘总是有效,所以我不确定为什么 SendKeys 有时只适用于此应用程序。我已经尝试过几种实现方式...在按下键时发送键,在用户按下键盘上的回车按钮时将它们一起发送,将键复制到剪贴板,然后使用发送键执行 Ctl-V然后输入。

我还有哪些其他选项可以模拟另一个应用程序的按键操作? SendKeys 似乎不能完美地模拟按键,那么是否有我可以利用的较低级别的机制?

我应该提一下,当它不起作用时,我会从 POS 应用程序中听到哔哔声,就好像我按下了一个无效键一样。所以这并不是说它没有得到某种输入,但显然它没有得到我发送的密钥,就像从实际键盘发送的一样。

我找到了这个 Windows 输入模拟器:https://inputsimulator.codeplex.com/

超级好用,而且比 SendKeys 好很多。作为奖励,除了让您模拟输入外,它还可以让您设置低级别 keyboard/mouse 挂钩。