在C#中,你可以使用Process
類來執行外部程序并獲取其輸出。以下是一個簡單的示例,展示了如何使用Process
類運行一個命令行程序(如ipconfig
),并讀取其標準輸出和錯誤輸出:
using System;
using System.Diagnostics;
class Program
{
static void Main()
{
// 創建一個ProcessStartInfo實例,用于配置要運行的進程
ProcessStartInfo startInfo = new ProcessStartInfo
{
FileName = "ipconfig", // 要運行的命令行程序
RedirectStandardOutput = true, // 將標準輸出重定向到進程的輸出流
RedirectStandardError = true, // 將錯誤輸出重定向到進程的輸出流
UseShellExecute = false, // 不使用外殼執行程序
CreateNoWindow = true // 不創建新窗口
};
// 創建一個Process實例,用于運行進程
using (Process process = new Process { StartInfo = startInfo })
{
// 開始運行進程
process.Start();
// 讀取進程的標準輸出
string output = process.StandardOutput.ReadToEnd();
Console.WriteLine("標準輸出:");
Console.WriteLine(output);
// 等待進程執行完成
process.WaitForExit();
// 讀取進程的錯誤輸出
string errorOutput = process.StandardError.ReadToEnd();
if (!string.IsNullOrEmpty(errorOutput))
{
Console.WriteLine("錯誤輸出:");
Console.WriteLine(errorOutput);
}
}
}
}
這個示例將運行ipconfig
命令行程序,并將其標準輸出和錯誤輸出重定向到應用程序的輸出流。然后,它讀取并打印這些輸出。你可以根據需要修改FileName
屬性以運行其他命令行程序。