RDP窗口不响应键盘模拟

问题描述:

我使用RemoteApp(〜RDP)访问远程应用程序,然后尝试用键盘模拟某些用户活动。但远程应用程序不会对该活动作出反应。 在本地运行的相同应用程序上进行的相同仿真非常完美!但是当我开始与远程应用程序交互时,一切都失败了。 我曾尝试:RDP窗口不响应键盘模拟

  1. SendKeys.SendWait(串)
  2. keybd_event(字节BVK,字节BSCAN,UINT dwFlags中,UIntPtr dwExtraInfo)
  3. SendInput和库比它InputSimulator(https://inputsimulator.codeplex.com/

没有什么是好的。唯一的成功是远程应用程序在退格中作出反应。

两台机器都是Win7 x64。

如何使用RDP-windows模拟键盘活动,您有什么建议或积极经验吗?

+0

您是否尝试过UI自动化? – Ben

我发现了以下解决方案 - 使用AutoIt。从官方网站

  1. Download的AutoIt和安装;
  2. 添加到您的项目的参考库AutoItX3.Assembly.dll。不要与图书馆和AutoItX3.dll AutoItX3_x64.dll混淆,这是至关重要的;
  3. 在文件的开头添加using AutoIt;,这将与键盘一起使用;
  4. 对于键盘模拟使用静态方法AutoItX.Send(string);
  5. 程序的可执行文件目录必须包含AutoItX3.Assembly.dll,AutoItX3.dll和AutoItX3_x64.dll库。如果您确定无法在32位或64位操作系统上运行应用程序,则可以相应地删除其中一个库 - AutoItX3.dll或AutoItX3_x64.dll。