话不多说直接上代码

static void ExecuteCommand(string command)
{
    var processInfo = new ProcessStartInfo("cmd.exe", "/c " + command);
    processInfo.CreateNoWindow = true;
    processInfo.UseShellExecute = false;
    processInfo.RedirectStandardError = true;
    processInfo.RedirectStandardOutput = true;

    var process = Process.Start(processInfo);

    process.OutputDataReceived += (object sender, DataReceivedEventArgs e) =>
        Console.WriteLine("output>>" + e.Data);
    process.BeginOutputReadLine();

    process.ErrorDataReceived += (object sender, DataReceivedEventArgs e) =>
        Console.WriteLine("error>>" + e.Data);
    process.BeginErrorReadLine();

    process.WaitForExit();

    Console.WriteLine("ExitCode: {0}", process.ExitCode);
    process.Close();
}

这段代码基本能满足cmd运行出现的所有情况。

相关文章:

  • 2021-10-28
  • 2021-12-12
  • 2022-01-12
  • 2021-10-20
  • 2021-12-02
  • 2022-12-23
猜你喜欢
  • 2021-10-29
  • 2021-12-18
  • 2021-04-21
  • 2022-01-03
  • 2021-11-23
相关资源
相似解决方案