C#使用PsExec - 没有答案

时间:2012-12-19 15:08:39

标签: c# .net psexec

从提示

直接执行以下语句
\\my_ip -u my_user -p my_pass -w C:\ta33 tasklist

返回预期的任务列表。 但是在C#代码中使用相同的语句,如

string executeCommand = "\\\\10.141.86.30 -u biebls -p 1krahsavs -w C:\\ta33 tasklist";
ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = System.IO.Directory.GetCurrentDirectory() + "\\PsExec.exe";
psi.Arguments = executeCommand;
psi.UseShellExecute = false;
psi.RedirectStandardOutput = true;
psi.RedirectStandardError = true;
Console.WriteLine("File [" + psi.FileName + "] - Args [" + psi.Arguments + "]");
Process p = new Process();
p.StartInfo = psi;
p.Start();
StreamReader outputReader = p.StandardOutput;
StreamReader errorReader = p.StandardError;
p.WaitForExit();

十分钟后我没有得到任何答案。任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

我很确定你的输出缓冲区已满,等待清空。使用Process时,人们遇到了许多常见问题。以下是一些快速浏览,其中包含一些代码示例http://csharptest.net/321/how-to-use-systemdiagnosticsprocess-correctly/