gpt4 book ai didi

c# - Process.RedirectStandardOutput 不起作用

转载 作者:行者123 更新时间:2023-11-30 14:28:17 25 4
gpt4 key购买 nike

我在重定向应用程序的标准输出时遇到问题。这似乎是 .NET 中的某种错误。

我在跑 Live555ProxyServer但是即使启动的控制台确实有书面输出,我也没有得到任何输出。此代码适用于任何其他控制台应用程序,但不适用于此应用程序。

void StartProcess()
{
var process = new Process();
process.StartInfo.FileName = @"live555ProxyServer.exe";
process.StartInfo.Arguments = "-R";
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.OutputDataReceived += process_OutputDataReceived;

process.Start();
process.BeginOutputReadLine();
}

void process_OutputDataReceived(object sender, DataReceivedEventArgs e)
{
Debug.WriteLine(e.Data);
}

可以找到该应用程序的源代码 here

最佳答案

那是因为所有输出都转到 stderr 而不是 stdout,参见 source code

您应该为 Process.ErrorDataReceived 添加处理程序并调用Process.BeginErrorReadLine一切都会开始顺利进行。

关于c# - Process.RedirectStandardOutput 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29967590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com