Tag: stderr

如何在进程操作期间逐行捕获进程STDOUT和STDERR。 (C#)

我将执行一个进程(lame.exe)将WAV文件编码为MP3。 我想处理进程的STDOUT和STDERR以显示进度信息。 我需要使用线程吗? 我无法理解它。 一些简单的示例代码将不胜感激。 谢谢

以正确的顺序捕获进程stdout和stderr

我从C#启动一个进程如下: public bool Execute() { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.Arguments = “the command”; startInfo.FileName = “C:\\MyApp.exe”; startInfo.UseShellExecute = false; startInfo.RedirectStandardOutput = true; startInfo.RedirectStandardError = true; Log.LogMessage(“{0} {1}”, startInfo.FileName, startInfo.Arguments); using (Process myProcess = Process.Start(startInfo)) { StringBuilder output = new StringBuilder(); myProcess.OutputDataReceived += delegate(object sender, DataReceivedEventArgs e) { Log.LogMessage(Thread.CurrentThread.ManagedThreadId.ToString() + e.Data); }; myProcess.ErrorDataReceived += delegate(object […]