给多个RDP命令并等待结果

问题描述:

我在本月底有一个重复的任务来给多个远程桌面连接命令(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?

感谢。

您可以使用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