Запустите приложение DOS и запишите его вывод в C#
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
// Запустите программу 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, чтобы получить стандартный вывод процесса и стандартные потоки ошибок. Он считывает потоки и отображает их содержимое.
Наконец, программа закрывает потоки и Процесс.