我有一个程序使用PyKeyboard.tap_key()将键击发送到我自动化的另一个应用程序(不幸的是,应用程序无法以任何其他方式自动化)。我在远程Windows计算机上运行它,我通过远程桌面访问它。
PyKeyboard.tap_key()在我连接时运行良好,但是如果我从远程桌面会话断开连接,则不再提供击键。
另一个问题:断开远程会话等效于"注销 - >切换用户"?我认为问题是用户没有登录(即使会话正在运行)。
答案 0 :(得分:1)
这似乎不是Python相关的问题。这也适用于SendInput()
(这可能是Python使用的WINAPI函数)。
出于安全原因,当计算机被锁定时,不允许应用程序向桌面发送输入。我测试了在RDP最小化时更改光标位置,但事实上,当会话在最小化后恢复时,鼠标光标不会显示,并且当它恢复时,在鼠标移回可见区域之前没有光标可见,在这种情况下,它会显示在用户移动它的位置。实际上,即使RDP窗口已恢复但主机上的鼠标未在窗口上方,RDP窗口中的鼠标光标也不可见。所以这可能也不可能。如果您尝试实现特定行为,除了使用模拟输入移动鼠标之外,可能还有其他方法可以执行此操作。