我試圖在C#中的Winform .NET 4.0中腳本多個遠程桌面連接。在Windows Server 2003 r2上從Winform啓動mstsc.exe
鑑於_serverList服務器名稱的列表,
var startInfo = new ProcessStartInfo
{
FileName = "cmd.exe",
RedirectStandardInput = true,
RedirectStandardOutput = true,
UseShellExecute = false,
CreateNoWindow = false
};
var process = new Process { StartInfo = startInfo };
process.Start();
foreach (string server in _serverList)
{
process.StandardInput.WriteLine(@"mstsc.exe /v:" + server);
}
當我在我的本地桌面(Windows 7)中其工作完全正常運行它:所有服務器推出,但一旦我端口的應用程序到服務器(Windows Server 2003 R2和觸發這種情況發生時, 我得到的錯誤
「的mstsc.exe」未被識別爲一個內部或外部命令,可操作的程序或批處理文件
事件我嘗試了提供mstsc.exe完整路徑的變體,將FileName =「mstsc.exe」更改並將服務器名稱作爲參數提供,但都不起作用。
當我在服務器上啓動cmd.exe並手動輸入「mstsc.exe/v:someservername」時,其行爲如預期的那樣啓動了正確的服務器。
任何有識之士到了什麼錯誤。當UseShellExecute
設置爲false,將不勝感激
你所說的「觸發此發生的事件」呢? –
你的應用程序以誰的身份運行?您是以用戶還是管理員身份登錄到服務器? – Hammerstein
也許是一個明顯的問題,但是你能夠從該機器上的命令行運行mstsc嗎? –