我有一个控制台应用程序,可以输出内容并等待输入。 我试图启动该应用程序获取输出,然后发回一些东西。但是,似乎我无法获得初始输出。相反,当我尝试读取重定向输出时,程序会阻塞。
代码:
Process p = new Process();
p.StartInfo.FileName = exe;
//p.StartInfo.Arguments = arg;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = false;
p.StartInfo.UseShellExecute = false;
p.Start();
//StreamWriter inputWriter = p.StandardInput;
//StreamReader outputReader = p.StandardOutput;
Console.WriteLine("Step 1");
string s = p.StandardOutput.ReadToEnd();
Console.WriteLine("Step 2");
Thread.Sleep(3000);
永远不会打印第2步。我错过了什么?