我正在尝试自动化基于非浏览器的功能(胖客户端应用程序 - 基于Delphi),基于Web的应用程序(新的Java应用程序),并选择使用Selenium + AutoIt。我需要比较一个特定用户在两个应用程序中显示的数据。
要访问胖客户端应用程序,我需要使用远程桌面连接。我能够通过selenium + autoit连接到远程桌面,但无法向远程计算机发送任何命令。如果有人知道解决方案,请帮助。
以下是我使用的代码。
import java.io.File;
import autoitx4java.AutoItX;
import com.jacob.com.LibraryLoader;
public class sampleTest {
static String rdcPwd = "password";
static String remoteComputerName = "computername";
public static void main(String[] args) throws InterruptedException {
String jacobDllVersionToUse;
jacobDllVersionToUse = "jacob-1.18-x64.dll";
File file = new File("lib", jacobDllVersionToUse);
System.setProperty(LibraryLoader.JACOB_DLL_PATH, file.getAbsolutePath());
AutoItX x = new AutoItX();
x.run("MSTSC.EXE");
x.winActivate("Remote Desktop Connection");
x.winWaitActive("Remote Desktop Connection");
x.controlClick("Remote Desktop Connection", "Co&nnect", "1");
Thread.sleep(15000);
x.send(rdcPwd);
Thread.sleep(3000);
x.controlClick("Windows Security", "", "[CLASS:Button; INSTANCE:2;]");
Thread.sleep(10000);
x.send("#r"); // Not Working
x.run("explorer.exe"); //Not Working
}
}
谢谢, 马杜。