首页 > 后端开发 > C++ > 如何从.NET应用程序中捕获和显示实时控制台输出?

如何从.NET应用程序中捕获和显示实时控制台输出?

Barbara Streisand
发布: 2025-01-29 12:31:09
原创
779 人浏览过

How Can I Capture and Display Live Console Output from a .NET Application?

在.NET应用程序中

实时控制台输出捕获

此示例显示了如何实时在.NET应用程序中捕获和显示控制台应用程序的输出。

<code class="language-csharp">using System.Diagnostics;

namespace RealtimeConsoleOutput
{
    class Program
    {
        static void Main(string[] args)
        {
            // Initiate the process for the console application.
            Process consoleApp = new Process();

            // Configure process settings.
            consoleApp.StartInfo.FileName = "csc.exe"; // Assumes 'csc.exe' is in the system PATH
            consoleApp.StartInfo.Arguments = "/r:System.dll /out:sample.exe stdstr.cs";
            consoleApp.StartInfo.UseShellExecute = false;
            consoleApp.StartInfo.RedirectStandardOutput = true;

            // Begin the process.
            consoleApp.Start();

            // Continuously read and display output.
            while (!consoleApp.StandardOutput.EndOfStream)
            {
                string line = consoleApp.StandardOutput.ReadLine();
                if (!string.IsNullOrEmpty(line)) // added null check for robustness
                    Console.WriteLine(line);
            }

            // Wait for the console application to finish.
            consoleApp.WaitForExit();
        }
    }
}</code>
登录后复制

详细说明:

  • :这将控制台应用程序的标准输出重定向到.NET应用程序。ProcessStartInfo.RedirectStandardOutput = true
  • 循环连续读取>的线,并使用
  • 显示它们。 添加零检查可提高代码的鲁棒性。while consoleApp.StandardOutputConsole.WriteLine():这检查是否已收到所有输出。
  • >
  • consoleApp.StandardOutput.EndOfStream:这确保.NET应用程序等待控制台应用程序的完成。
  • consoleApp.WaitForExit()要进行全面的输出捕获,请考虑使用

以上是如何从.NET应用程序中捕获和显示实时控制台输出?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板