Можно ли получить текст из cmd после ...
Process _process = new Process ();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = "filename";
startInfo.Arguments = "/p /a /c" ;
_process.StartInfo = startInfo;
_process.Start();
Попробовал как вы посоветовали но выскакивает ошибка как вы думаете, как можно исправить?
Самое интересное, что вызов срабатывает ...
Ответ
Если речь о получении вывода консольной команды, то попробуйте следующий подход:
startInfo.FileName = "filename";
startInfo.Arguments = "/p /a /c";
startInfo.UseShellExecute = false;
startInfo.RedirectStandardOutput = true;
_process.StartInfo = startInfo;
_process.EnableRaisingEvents = true;
_process.OutputDataReceived += process_OutputDataReceived;
_process.Exited += process_Exited;
_process.Start();
Остается только написать обработчики process_OutputDataReceived и process_Exited
Если выхлоп у процесса небольшой и быстрый, то можно просто добавить
startInfo.UseShellExecute = false;
startInfo.RedirectStandardOutput = true;
А потом прочитать весь вывод:
string output = _process.StandardOutput.ReadToEnd();
Комментариев нет:
Отправить комментарий