首頁 > 後端開發 > 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
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板