Я пытаюсь перенаправить вывод моей программы командной строки, когда она вызывается с помощью Process.Start()
. Я пробовал все перестановки RedirectStandardOutput
, UseShellExecute
и CreateNowWindow
, и мне не повезло.
Я знаю, что есть другие способы сделать это, например, прочитать StandardOutput
после этого, но я бы предпочел перенаправить его с аргументами, если это возможно, в файл. Меня интересует только код возврата, и мне нужен только вывод myprog.exe в go в файл. Моей программе не нужно знать, каков результат.
var p = new Process();
p.StartInfo.FileName = @"myprog.exe";
p.StartInfo.Arguments = " " + InputFilename + " > " + OutputFilename;
p.StartInfo.RedirectStandardOutput = false;
p.StartInfo.UseShellExecute = false;
p.StartInfo.CreateNoWindow = true;
p.Start();
p.WaitForExit();
var result = p.ExitCode;