нужно из GUI запускать консольную программу и перехватывать её вывод. почему-то ничего не перехватывается, хотя прога отрабатывает и завершается. пишу так
| Код | using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; using System.Windows.Forms; using System.IO;
namespace WindowsFormsApplication1 { class rtmpDump { public void open(String url) { try { var pr = new Process(); pr.StartInfo.FileName = "C:/WINDOWS/rtmpdump.exe"; pr.StartInfo.Arguments = "-help"; pr.StartInfo.UseShellExecute = false; pr.StartInfo.RedirectStandardOutput = true; pr.StartInfo.StandardOutputEncoding = Encoding.GetEncoding(866); pr.StartInfo.CreateNoWindow = true; pr.OutputDataReceived += new DataReceivedEventHandler(OutputHandler); pr.EnableRaisingEvents = true; pr.Exited += new EventHandler(whenExitProcess); pr.Start(); pr.BeginOutputReadLine(); } catch (Exception error) { MessageBox.Show("Ошибка при запуске!\n" + error.Message, Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void OutputHandler(object sender, DataReceivedEventArgs line){ MessageBox.Show(line.Data); } private void whenExitProcess(object sender, EventArgs e) { MessageBox.Show("rtmpdump завершился"); } } }
|
|