使用进程我在使用 process.StartInfo.RedirectStandardOutput = true 时遇到异常;例外情况在“StandardOut 尚未重定向或进程尚未开始”下方。
我正在使用 process.WaitForExit 挂起我的应用程序 gui 所以我使用了 process.StandardOutput.ReadToEnd(); 根据 MSDN,在 WaitForExit 之前,但现在我的进程运行了无限时间,并在日志文件中给出了上述异常,并且 GUI 也挂起。
Process process = new Process();
process.StartInfo.WorkingDirectory = Path.GetDirectoryName(Application.ExecutablePath);
string strArguments = "";
process.StartInfo.FileName = @"appname.bat";
process.StartInfo.Arguments = strArguments;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.UseShellExecute = false;
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.Start();
string output = process.StandardOutput.ReadToEnd();
process.WaitForExit();
process.Close();
我没有得到我缺少的地方或代码中的错误在哪里......即使我也尝试过在 waitforexit 中超时但没有成功。