我的目标是在我的CODEDUI测试中打开一个具有不同用户凭据的Windows应用程序,经过大量谷歌搜索我尝试了模仿LLD但无法让它工作。我决定直接打开远程桌面连接并指示我的代码启动目标应用程序,但应用程序是在我的本地环境而不是远程桌面启动的。
使用此代码,我可以成功登录远程计算机。
var rdcProcess = new Process();
rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\cmdkey.exe");
rdcProcess.StartInfo.Arguments = "/generic:TERMSRV/MachineName/user:" + userName+ " /pass:" + "password";
rdcProcess.Start();
rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\mstsc.exe");
rdcProcess.StartInfo.Arguments = "/v " + "MachineName"; // ip or name of computer to connect
rdcProcess.Start();
然后我想在这台远程机器中启动应用程序:
Apps = ApplicationUnderTest.Launch(@"application.exe");
相反,它从我的本地环境启动应用程序。在远程环境中启动应用程序需要做什么?