저는 파이썬 스크립트 출력을 읽고 텍스트 상자에 결과를 보여주는 프로그램을 작성하고 있습니다. 오랜 시간 동안 스크립트를 실행 했으므로 출력을 1 초마다 (또는 각 줄을 기록한 후) 볼 수 있기를 원합니다. 이제 프로세스가 끝날 때만 출력을 볼 수 있습니다. 누군가가 문제를 알고 있습니까? 내 코드의cmd 출력을 실시간으로 읽는 중
조각 :
Process p = new Process();
p.StartInfo.CreateNoWindow = true;
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
p.OutputDataReceived += new DataReceivedEventHandler (p_OutputDataReceived);
p.ErrorDataReceived += new DataReceivedEventHandler (p_ErrorDataReceived);
p.Exited += new EventHandler (p_Exited);
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.UseShellExecute = false;
p.StartInfo.FileName = "python.exe";
p.StartInfo.Arguments = "path " + commandline;
p.Start();
StreamReader s = p.StandardOutput;
String output = s.ReadToEnd();
textBox3.Text = output;
p.WaitForExit();