У меня есть файл RDP, который успешно запускает RemoteApp.
remoteapplicationmode:i:1
remoteapplicationprogram:s:||application
remoteapplicationname:s:application.exe
remoteapplicationcmdline:s:
authentication level:i:2
gatewayusagemethod:i:2
gatewayprofileusagemethod:i:1
gatewaycredentialssource:i:0
full address:s:aaa.bbb.ccc.com
Я попытался скопировать его настройки в свои объекты С#:
AxMsRdpClient7NotSafeForScripting rc = new AxMsRdpClient7NotSafeForScripting();
rc.OnConnected += (_1, _2) => { rc.RemoteProgram2.ServerStartProgram("application.exe", "", "%HOMEDRIVE%" + "%HOMEPATH%", true, "", true); };
rc.RemoteProgram2.RemoteProgramMode = true;
rc.RemoteProgram2.RemoteApplicationProgram = "||application";
rc.RemoteProgram2.RemoteApplicationName = "application.exe";
rc.TransportSettings.GatewayUsageMethod = 1;
rc.TransportSettings.GatewayProfileUsageMethod = 1;
rc.TransportSettings.GatewayCredsSource = 0;
rc.Server = "aaa.bbb.ccc.com";
rc.UserName = "DOMAIN\\user";
rc.AdvancedSettings7.PublicMode = false;
rc.AdvancedSettings7.ClearTextPassword = "pass";
rc.AdvancedSettings7.AuthenticationLevel = 2;
rc.DesktopWidth = SystemInformation.VirtualScreen.Width;
rc.DesktopHeight = SystemInformation.VirtualScreen.Height;
rc.AdvancedSettings7.SmartSizing = true;
rc.Connect();
Я искал везде, но не смог найти ни одного примера того, как запускать RemoteApp программно.
Я покрасил эту страницу, но это не очень помогло. Клиент (элемент управления COM) успешно подключается, но просто отображает синий экран, а приложение RemoteApp не запускается.
Кроме того, я не уверен, что это правильный метод запуска rc.RemoteProgram2.ServerStartProgram
, потому что он принимает пути в качестве аргументов, а в моем файле RDP пути нет!
Может кто-нибудь помочь мне? Я использую правильные объекты, чтобы делать то, что я хочу?
Сервер работает под управлением Windows Server 2008R2.