我有 C# 控制台应用程序,它运行另一个 Borland C 控制台应用程序。它工作正常。但是在我将第一个应用程序重新制作为 WinForm 应用程序后,我无法从 Borland C 控制台应用程序获得输出。
代码在这里:
Process p = new Process();
p.StartInfo.CreateNoWindow = true;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = name1;
p.Start();
StreamReader sr = p.StandardOutput;
progOutput = sr.ReadToEnd();
//progOutput = p.StandardOutput.ReadToEnd();
p.WaitForExit();
字符串progOutput
为空。如果我使用 line
progOutput = p.StandardOutput.ReadToEnd();
而不是,我会得到相同的结果StreamReader
Borland C 控制台应用程序真正启动并正常创建了它的输出文件。
但它的输出在 WinForm 应用程序中消失了。正如我所说,这段代码在 C# 控制台应用程序中运行良好,但现在在 C# Windows 窗体应用程序中不起作用。
顺便说一句,如果我在 WinForm 应用程序中运行 C# 控制台应用程序,输出就可以了。Borland C 输出有问题?但是当我在 C# 控制台应用程序中运行 Borland C 应用程序时它起作用了。所以我很困惑。
谢谢