从.NET应用程序(C#)捕获控制台输出

从.NET应用程序(C#)捕获控制台输出

如何从.NET应用程序调用控制台应用程序并捕获控制台中生成的所有输出?

(请记住,我不想先将信息保存在文件中,然后再重放,因为我希望以现场方式接收它。)


慕的地10843
浏览 903回答 3
3回答

慕森卡

使用ProcessStartInfo.RedirectStandardOutput财产。完整的示例包含在链接的MSDN文档中;唯一的警告是,您可能还必须重定向标准错误流,以查看应用程序的所有输出。Process compiler = new Process();compiler.StartInfo.FileName = "csc.exe";compiler.StartInfo.Arguments = "/r:System.dll  /out:sample.exe stdstr.cs";compiler.StartInfo.UseShellExecute = false;compiler.StartInfo.RedirectStandardOutput = true;compiler.Start();      Console.WriteLine(compiler.StandardOutput.ReadToEnd());compiler.WaitForExit();
打开App,查看更多内容
随时随地看视频慕课网APP