溫馨提示×

C#子進程的輸出如何捕獲

c#
小樊
141
2024-08-27 09:55:06
欄目: 編程語言

在C#中,可以使用System.Diagnostics.Process類來創建和管理子進程

using System;
using System.Diagnostics;
using System.IO;

class Program
{
    static void Main(string[] args)
    {
        // 創建一個新的ProcessStartInfo對象,用于配置子進程
        ProcessStartInfo startInfo = new ProcessStartInfo
        {
            FileName = "cmd.exe", // 指定要運行的程序(例如:cmd.exe)
            RedirectStandardOutput = true, // 重定向標準輸出,以便我們可以捕獲它
            UseShellExecute = false, // 不使用操作系統shell啟動進程
            CreateNoWindow = true // 不創建新窗口
        };

        // 創建一個新的Process對象,用于管理子進程
        Process process = new Process
        {
            StartInfo = startInfo
        };

        // 啟動子進程
        process.Start();

        // 讀取子進程的輸出
        string output = process.StandardOutput.ReadToEnd();

        // 等待子進程退出
        process.WaitForExit();

        // 輸出子進程的輸出
        Console.WriteLine("子進程輸出:");
        Console.WriteLine(output);
    }
}

這個示例將創建一個新的子進程,該子進程運行cmd.exe。通過設置RedirectStandardOutputtrue,我們可以捕獲子進程的輸出。然后,我們使用process.StandardOutput.ReadToEnd()方法讀取子進程的輸出,并將其輸出到控制臺。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女