Получить исполняемый вывод в C#

Чтобы получить выходные данные исполняемого файла (.exe) на C#, вы можете использовать несколько методов. Вот несколько часто используемых подходов:

  1. Класс процесса: вы можете использовать класс Processиз пространства имен System.Diagnostics, чтобы запустить исполняемый файл и записать его выходные данные. Вот пример:
using System;
using System.Diagnostics;
public class Program
{
    public static void Main()
    {
        Process process = new Process();
        process.StartInfo.FileName = "your_executable.exe";
        process.StartInfo.RedirectStandardOutput = true;
        process.StartInfo.UseShellExecute = false;
        process.Start();

        string output = process.StandardOutput.ReadToEnd();
        process.WaitForExit();

        Console.WriteLine(output);
    }
}
  1. Класс ProcessStartInfo. Другой способ — использовать класс ProcessStartInfoдля установки необходимых свойств для выполнения файла .exeи захвата его вывода. Вот пример:
using System;
using System.Diagnostics;
public class Program
{
    public static void Main()
    {
        ProcessStartInfo startInfo = new ProcessStartInfo();
        startInfo.FileName = "your_executable.exe";
        startInfo.RedirectStandardOutput = true;
        startInfo.UseShellExecute = false;

        Process process = new Process();
        process.StartInfo = startInfo;
        process.Start();

        string output = process.StandardOutput.ReadToEnd();
        process.WaitForExit();

        Console.WriteLine(output);
    }
}
  1. Windows PowerShell: если вы запускаете код C# на платформе Windows, вы также можете использовать PowerShell для выполнения файла .exeи записи его выходных данных. Вот пример:
using System;
using System.Diagnostics;
public class Program
{
    public static void Main()
    {
        Process process = new Process();
        process.StartInfo.FileName = "powershell.exe";
        process.StartInfo.Arguments = "your_executable.exe";
        process.StartInfo.RedirectStandardOutput = true;
        process.StartInfo.UseShellExecute = false;
        process.Start();

        string output = process.StandardOutput.ReadToEnd();
        process.WaitForExit();

        Console.WriteLine(output);
    }
}

Замените "your_executable.exe"фактическим путем или именем вашего исполняемого файла.