Entwickler-Ecke
WinForms - Konsolenbefehle verarbeiten
Skiller-1988 - Di 09.09.08 08:54
Titel: Konsolenbefehle verarbeiten
Hi,
mein Problem ist das ich einen Konsolenbefehl der im Hintergrund laufen soll "verarbeiten" will und zwar in der form das dass Ergebniss z.B. von einen Pingbefehl in der Textbox ausgegeben werden soll.
Mein Problem ist, dass ich das mit der Ausgabe nicht hinbekomme.
meine kläglichen Versuche:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7:
| Process p = new Process(); p.StartInfo.FileName="ping"; p.StartInfo.Arguments="127.0.0.1"; p.StartInfo.CreateNoWindow = true; p.Start(); textBox1.Text = p.StandardOutput.ReadToEnd(); |
Skiller-1988 - Mi 10.09.08 12:25
hat den keine eine Lösung bzw. Idee zu meinen Problem?
Peter Enz - Mi 10.09.08 13:06
Skiller-1988 hat folgendes geschrieben: |
| hat den keine eine Lösung bzw. Idee zu meinen Problem? |
Doch:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33:
| private void button1_Click(object sender, EventArgs e) { Process p = new Process(); p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardOutput = true; p.StartInfo.FileName = "ping"; p.StartInfo.Arguments = "192.168.0.254"; p.OutputDataReceived += new DataReceivedEventHandler(p_OutputDataReceived); p.Start(); p.BeginOutputReadLine(); }
void p_OutputDataReceived(object sender, DataReceivedEventArgs e) { if (e.Data == null) { return; } if (listBox1.InvokeRequired) { listBox1.Invoke( (MethodInvoker)delegate() { listBox1.Items.Add(e.Data.ToString()); }); } else { listBox1.Items.Add(e.Data.ToString()); } } } |
In der Hilfe zu Process.BeginOutputReadLine findest Du eigentlich alles.
Gruß
Peter
Skiller-1988 - Mi 10.09.08 14:14
Danke das war genau was ich wollte. :zustimm:
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!