C# 我将控制台应用程序重新改造为WinForm应用程序。我能';现在无法从其他控制台应用程序获取输出
我有一个C#控制台应用程序,它运行另一个Borland C控制台应用程序。效果不错。 但在我将第一个应用程序重新制作成WinForm应用程序之后,我无法从Borland C控制台应用程序中获得输出 代码如下:C# 我将控制台应用程序重新改造为WinForm应用程序。我能';现在无法从其他控制台应用程序获取输出,c#,winforms,console,C#,Winforms,Console,我有一个C#控制台应用程序,它运行另一个Borland C控制台应用程序。效果不错。 但在我将第一个应用程序重新制作成WinForm应用程序之后,我无法从Borland C控制台应用程序中获得输出 代码如下: Process p = new Process(); p.StartInfo.CreateNoWindow = true; p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardError
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 console应用程序确实正常启动并创建了输出文件。
但它的输出在WinForm应用程序中消失了。
正如我所说,这段代码在C#控制台应用程序中运行正常,
但现在在C#Windows窗体应用程序中不起作用
顺便说一句,如果我在WinForm应用程序中运行C#console应用程序,输出是正常的。
Borland C输出有什么问题吗?
但当我在C#控制台应用程序中运行Borland C应用程序时,它起了作用。
所以我很困惑
谢谢检查
var errorOut = p.StandardError.ReadToEnd();
您可能会将输出作为StandardError。您可以找到许多与此相关的问题,我们希望从StandardOutput获得输出,但它会重定向到StandardError。检查
var errorOut = p.StandardError.ReadToEnd();
您可能会将输出作为StandardError。您可以找到许多与此相关的问题,我们希望从StandardOutput获得输出,但它会重定向到StandardError。在某些情况下,我发现像这样间接启动可执行文件是有益的
p.StartInfo.FileName = "cmd";
p.StartInfo.Arguments = "/C " + name1;
..尤其是在存在输出重定向问题时。但你说它是一个控制台应用 在某些情况下,我发现像这样间接启动可执行文件是有益的
p.StartInfo.FileName = "cmd";
p.StartInfo.Arguments = "/C " + name1;
..尤其是在存在输出重定向问题时。但你说它是一个控制台应用 StandardError有什么?StandardError有什么?我也有同样的问题!这个给我修好了!替换p.StartInfo.FileName=name1使用上面的两行代码>并告诉我们结果..但是如何将参数发送到控制台程序?“/C”是什么意思。谢谢顺便说一句,我现在用一个技巧解决了这个问题。我在myBorlandProg.exe%1%2>myBorlandProg.log
中创建了*.bat文件,然后分析了该日志文件。我遇到了同样的问题!这个给我修好了!替换p.StartInfo.FileName=name1使用上面的两行代码>并告诉我们结果..但是如何将参数发送到控制台程序?“/C”是什么意思。谢谢顺便说一句,我现在用一个技巧解决了这个问题。我在myBorlandProg.exe%1%2>myBorlandProg.log中创建了*.bat文件,然后分析了该日志文件