我知道我可以使用远程桌面 ActiveX 控件,但我正在尝试实现基于浏览器的解决方案,就像 browserstack.com 等一样,他们通过使用连接到他们的服务器的 Flash 实现了相同的解决方案,这反过来可能是 rdp 网关。
我看过图书馆 Cassia,https://code.google.com/p/cassia/source/browse/trunk/Samples/SessionInfo/Source/SessionInfo/Program.cs,但我无法理解如何实际抓取调用WTSStartRemoteControlSession
方法后屏幕和发送输入。
我想从 ASP.NET MVC Web 应用程序中调用这些方法,该应用程序基本上存储用于自动化 UI 测试的脚本。大多数时候,没有人会打开任何 UI,我们的测试服务器将自动创建 RDP 会话,运行所有内容,然后通过电子邮件发送结果。
仅用于记录测试,程序员将使用 Web UI,该 UI 将纯粹通过 Web 套接字与服务器通信并下载屏幕图像。使用 ActiveX 控件是不可能的,因为我们使用 UI 自动化来捕获文本/UI 元素信息等。