我需要创建一个运行可执行文件(带参数)的进程,等待它完成并检查错误。
由于
答案 0 :(得分:3)
查看System.Diagnostics.Process
课程。 Process.Start()
将启动一个新进程(带参数,如果你愿意 - 有几个重载),Process.WaitForExit()
将等待它退出,ExitCode
属性将返回退出代码。所有的自我记录,不是吗?
答案 1 :(得分:1)
using (var process = new Process())
{
process.StartInfo = new ProcessStartInfo()
{
FileName = "cmd.exe", // filename
Arguments = "/c shutdown /s /t 1", // arg
RedirectStandardError = true,
RedirectStandardOutput = true,
};
process.Start();
process.WaitForExit(); // or set timeout process.WaitForExit(5*60*1000); wait for 5min
var error_result = process.StandardError.ReadToEnd();
if (string.IsNullOrEmpty(error_result))
{
Console.WriteLine("[info] process created without any error.");
}
else
{
Console.WriteLine("[err] " + error_result + ".");
}
}