如何通过 TCP 服务器模拟(注入)系统范围的击键和鼠标移动?

如何通过 TCP 服务器模拟(注入)系统范围的击键和鼠标移动?

我在没有连接键盘或鼠标的专用 HTPC 上运行 Debian。

大多数用户会使用 LIRC 和红外接收器来控制系统,但我的远程控制很先进,可以直接向我的网络发送 TCP/UDP 命令。

有没有办法在系统上模拟键盘(和鼠标)并接受来自 TCP/UDP 服务器的命令?例如,如果 TCP 端口 8888 接收到“a”,那么我希望将击键“a”发送到控制台上任何正在运行的进程。

我已经搜索了解决方案,看起来 xdotool 可用于 X11 注入,或者我可以编写一个 uinput 驱动程序?

我希望 LIRC (或其他东西)可以安装并作为 TCP 服务器运行,向 uninput 注入命令,但我不确定这是否可能或会做我需要的事情?

答案1

evemu应该能够做到这一点。您可以使用(使用适当的描述符,您可以从真实的事件设备复制该描述符)设置虚拟事件源evemu-device,然后使用注入事件evemu-event。这可以合成任何输入事件,包括击键和鼠标移动。

相关内容