在远程服务器中执行命令

时间:2013-02-11 01:23:45

标签: command execute

我的远程服务器名称:MyServerName 操作系统:带SP1的Windows Server 2008 R2 DomainName:MyDomainName 用户名:MyUserName 密码:MyPassWord

我从本地桌面使用远程桌面连接实用程序,并且能够使用管理员登录连接到远程服务器(假设MyUserName& MyPassWord作为管理员登录)。

在我的远程桌面中,我必须打开cmd提示符并执行以下命令:

C:\用户\ MyUserName输入\ hpacu

其中“hpacu”是一个实用程序,它将在命令提示符中自行执行,并在同一个命令提示符中为我提供输出。

我正在使用Windows Forms C#准备自动化。

我的申请表:

  1. TextBox - 从用户(我自己)获取服务器名称。我会给出正确的服务器名称。

  2. 按钮 - 使用我的管理员凭据连接到服务器并远程执行硬编码命令。

  3. PsExec - 此工具位于我本地计算机的D-Drive中。文件的确切位置是D:\ PSTools \ PsExe.exe

  4. 注意:我没有收集用于访问远程计算机的用户名和密码,因为我会右键单击windows forms exe并以不同的用户身份执行 - >提供管理员凭据以及服务器的域名,因此它不会要求我输入访问服务器计算机的用户名和密码。

    我的C#按钮点击代码:

    string arg =“cd / d d:/ PStools& psexec.exe \\”+ txtServerName.Text +“C:\ Users \”+ MyUserName +“\ hpacu& Pause”;

    System.Diagnostics.Process.Start(“CMD.Exe”,“/ c”+ arg);

    当我点击按钮时,我可以连接到远程机器。我也能够启动命令提示符并执行命令。但最后我得到了以下错误:“没有进程在管道的另一端。”

    当我尝试以传统方式手动执行命令时(即通过远程桌面实用程序连接),该命令完美运行并为我提供输出。请指导我如何继续。

0 个答案:

没有答案