Запустите приложение DOS и запишите его вывод в C#

// Запустите программу DOS.
private void btnRun_Click(object sender, EventArgs e)
{
    // Установите начальную информацию.
    ProcessStartInfo start_info =
        new ProcessStartInfo(txtProgram.Text);
    start_info.UseShellExecute = false;
    start_info.CreateNoWindow = true;
    start_info.RedirectStandardOutput = true;
    start_info.RedirectStandardError = true;

    // Создаем процесс и устанавливаем его начальную информацию.
    using (Process proc = new Process())
    {
        proc.StartInfo = start_info;

        // Запустите процесс.
        proc.Start();

        // Прикрепить к stdout и stderr.
        using (StreamReader std_out = proc.StandardOutput)
        {
            using (StreamReader std_err = proc.StandardError)
            {
                // Отображение результатов.
                txtStdout.Text = std_out.ReadToEnd();
                txtStderr.Text = std_err.ReadToEnd();

                // Очистка.
                std_err.Close();
                std_out.Close();
                proc.Close();
            }
        }
    }
}

Этот код создает объект ProcessStartInfo для хранения информации о процессе, который он должен запустить. Затем он создает объект Process, устанавливает его свойство StartInfo и вызывает его метод Start, чтобы запустить его.

Затем программа создает объекты StreamReader, чтобы получить стандартный вывод процесса и стандартные потоки ошибок. Он считывает потоки и отображает их содержимое.

Наконец, программа закрывает потоки и Процесс.

Источник: http://csharphelper.com/blog/2015/01/run-a-dos-application-and-capture-its-output-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector