- 我想从 C# 在 cmd.exe 上运行一系列命令。
- 我只需要打开一个cmd窗口
- 我需要在执行过程中和完成后保持 cmd 窗口打开。
- 我需要在打开的 cmd 窗口 [/edit] 中显示命令 [edit]以及命令的输出。
所以基本上我想像手动用户一样打开和使用 cmd.exe。我尝试了一些方法,但没有一个可以完成上述所有 4 项。
下面的代码有效,但不显示命令/输出并在完成后终止。有什么帮助吗?
Process p = new Process();
ProcessStartInfo info = new ProcessStartInfo("cmd.exe");
info.RedirectStandardInput = true;
info.UseShellExecute = false;
info.CreateNoWindow = false;
info.Arguments = "/k";
p.StartInfo = info;
p.Start();
using (StreamWriter sw = p.StandardInput)
{
if (sw.BaseStream.CanWrite)
{
sw.WriteLine("dir");
sw.WriteLine("ipconfig");
}
}