C # - Как вызвать exe добавлен в проект решения - PullRequest
6 голосов
/ 26 ноября 2008

Итак, я добавил EXE в решение моего проекта. EXE делает некоторые вещи и выводит данные через стандартный вывод. Я хочу записать вывод, но что более важно, как мне выполнить этот EXE в моей программе?

Ответы [ 2 ]

7 голосов
/ 26 ноября 2008
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "myExec.exe";
p.Start();
3 голосов
/ 26 ноября 2008

Process.Start. Для захвата стандартного вывода вам нужно перенаправить его через ProcessStartInfo - есть пример на MSDN . Также убедитесь, что исполняемый файл помечен для копирования в выходной каталог (bin / release и т. Д.).

Если вам нужно читать как из stdout, так и из stderr, это становится сложно (при наивной реализации существует риск тупиковой ситуации из-за буферизации и т. Д.) ... вот пример использования рабочих потоков.

...