在c#中使用PsExe.exe运行远程cmd文件后,我无法读取输出。以下是我的尝试:
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.FileName = @"D:\path\PsExec.exe";
string pargs = @"\\servername -u <username> -p <password> cmd /c C:\\path\\Test.cmd";
p.StartInfo.Arguments = pargs;
p.Start();
p.WaitForExit();
string output = p.StandardOutput.ReadToEnd();
MessageBox.Show("output=" + output);
MessageBox.Show("error=" + p.StandardError.ReadToEnd());`
以下是Output
以下是我收到的Error
但是,如果我尝试执行以下命令表单local,它工作正常,我可以在那里看到输出。
Psexec //servername -u username -p password cmd /c C:\\path\\Test.cmd
注意: - Test.cmd
也有pause
声明