我需要在我的项目中使用命令提示符。一切正常,但输出不是我想要的。如果我这样做:
ProcessStartInfo info = new ProcessStartInfo("cmd","/c dir c:\\test");
info.RedirectStandardOutput = true;
info.RedirectStandardInput = true;
info.CreateNoWindow = true;
info.UseShellExecute = false;
Process p = new Process();
p.StartInfo = info;
p.Start();
string iii = p.StandardOutput.ReadToEnd();
textBox1.Text = iii;
结果没问题。正是我想要的。但我还需要发送更多命令。所以我这样做:
ProcessStartInfo info = new ProcessStartInfo("cmd");
info.RedirectStandardOutput = true;
info.RedirectStandardInput = true;
info.CreateNoWindow = true;
info.UseShellExecute = false;
Process p = new Process();
p.StartInfo = info;
p.Start();
StreamWriter write = p.StandardInput;
write.WriteLine("dir c:\\test");
write.Close();
string iii = p.StandardOutput.ReadToEnd();
textBox1.Text = iii;
但是结果和以前不一样了。它给出了 cmd 中的路径和所有内容,这是我不想要的。我只需要命令提示符的结果,不需要别的。希望有人可以提供帮助。感谢您阅读我的问题。