我有一个应用程序,在命令行窗口中调用另一个进程,该进程具有输出到控制台窗口的更新统计信息。我认为这是一个相当简单的操作,但似乎无法使其正常工作。我是否漏掉了什么?
string assemblyLocation = Assembly.GetExecutingAssembly().Location;
Process process = new Process
{
ProcessStart =
{
RedirectStandardOutput = true,
UseShellExecute = false,
WindowStyle = ProcessWindowStyle.Hidden,
Arguments = arg,
FileName = assemblyLocation.Substring(0, assemblyLocation.LastIndexOf("\\")) + "\\ffmpeg.exe",
CreateNoWindow = true
}
};
process.Start();
Console.WriteLine(process.StandardOutput.ReadToEnd());
process.WaitForExit();
理想情况下,我希望在该过程中输出发生变化时,或者读取器接收到数据时,可以获取其事件。
任何帮助都将是极好的,我感觉这是一个新手问题,但似乎缺少了什么。