2016-04-21 64 views
0

我在本月底有一個重複的任務來給多個遠程桌面連接命令(Win7,Win Server 2008,Win server 2012,Win 8 ...)和我需要逐個打開它們才能完成這項任務。我想要一些工具來登錄每一個人併發出命令。給多個RDP命令並等待結果

這裏是我的嘗試:

public Form1() 
{ 
    InitializeComponent(); 

    rdp.Server = "1.2.3.4"; 
    rdp.UserName = "Rmlabuser2"; 

    IMsTscNonScriptable secured = (IMsTscNonScriptable)rdp.GetOcx(); 
    secured.ClearTextPassword = "Rmlabuser2"; 
    rdp.Connect(); 

    // open cmd.exe and give commands like VER and return output into a message text box 
    // rdp.SecuredSettings.StartProgram = @"c:\windows\System32\cmd.exe"; 
} 

全碼: http://www.codeproject.com/Articles/43705/Remote-Desktop-using-C-NET

任何ideeas?

感謝。

回答

0

您可以使用psexec在遠程計算機上運行命令。

如果您需要在活動會話中運行命令,則可以在該計算機上創建計劃任務,以執行所需的任務。計劃任務可以配置爲在當前登錄的會話或系統/預定義帳戶下運行。

有許多C#庫可以與Windows計劃任務一起使用。例如http://taskscheduler.codeplex.com/

+0

我已經試過PXEXEC,沒有結果,在這裏http://pastebin.com/BKRBeYqn – Damian

+0

我認爲你仍然需要提供一個命令給psexec,即使是在交互模式下。嘗試追加「cmd」到你的命令行來啓動命令行解釋器 – alex

+0

不太明白,舉個例子吧?我甚至試過'psexec \\ 1.2.3.4 -u Rmlabuser2 -p Rmlabuser2 -l -d「c:\ program files \ internet explorer \ iexplore.exe」 'got 無法訪問1.2.3.4: 網絡路徑沒找到。 確保在1.2.3.4上啓用了默認admin $共享。 – Damian