вывод из консольного приложения и чтение вывода из приложения форм c# - PullRequest
0 голосов
/ 14 февраля 2020

Итак, у меня есть два приложения. В консольном приложении, скажем, я делаю Console.WriteLine("Hello World");, затем я компилирую в exe.

Из моего основного приложения форм я хочу вызвать это приложение

var processStartInfo = new ProcessStartInfo
            {
                FileName = @"C:\ConsoleApp1.exe",
                Arguments = "Arguments",
                RedirectStandardOutput = true,
                UseShellExecute = false
            };
            var process = Process.Start(processStartInfo);
            var output = process.StandardOutput.ReadToEnd();
            process.WaitForExit();
            Console.WriteLine(output);

Однако оно не читает выход. Есть ли другой способ выводить данные из консольного приложения, а не Console.WriteLine("Hello World");

1 Ответ

0 голосов
/ 14 февраля 2020

Проблема с кодом заключается в том, что вы читаете вывод до завершения команды. Измените последовательность, в которой вы читаете результат после завершения

var process = Process.Start(processStartInfo);
process.WaitForExit();
var output = process.StandardOutput.ReadToEnd();
Console.WriteLine(output)
...