Moin Leute,
ich habe eine externe Anwendung die ich in meinem Programm ansteuere,
dieses externe Progrämmchen gibt auf der Kommandozeile einen Status/String
aus. Kann ich mir diesen String irgendwie ausgeben lassen?
Danke
Gruß
Budi
Nimm das Leben nicht zu ernst - denn du kommst nicht lebend raus!
Hmm habs jetzt mal versucht mit
Environment.ExitCode
aber bekomme da nur eine "0" ausgegeben und nicht das,
was das Programm eigentlich auf der Kommandozeile ausgibt.
Ich will ja nicht den Rückgabewert der main-funktion, sondern das auf
der Kommandozeile ...
Falls das überhaupt geht ... 8)
Nimm das Leben nicht zu ernst - denn du kommst nicht lebend raus!
Also, wenn ich dich richtig verstehe, dann willst du einen Wert aus der Konsole auslesen?
Hab ich leider auch noch nicht gemacht, aber vieleicht hilft ja dieser Beitrag:
Da du die externe Anwendung ja sicherlich per Process startest, wäre es naheliegend gewesen, dort auch zu suchen => Process.ExitCode
Danke erstmal.
Ich woll mir die Konsolenausgabe live in einem Control (z.B. Textbox etc.)
anzeigen lassen. Habe das mal so versucht:
ProcessStartInfo startInfo = new ProcessStartInfo(sPathAnalyzer, sArguments);
startInfo.CreateNoWindow = true;
startInfo.RedirectStandardOutput = true;
startInfo.UseShellExecute = false;
Process myProcess = new Process();
myProcess.OutputDataReceived += new DataReceivedEventHandler(myProcess_OutputDataReceived);
myProcess = Process.Start(startInfo);
myProcess.BeginOutputReadLine();
myProcess.WaitForExit();
// wartet eine unbestimmte Zeit, bis der Prozess beendet wurde
myProcess.Close();
void myProcess_OutputDataReceived(object sender, DataReceivedEventArgs e)
{
OutputCmd = e.Data;
}
Nur klappt die Ausgabe auf der mainform nicht so ganz.
Wenn ich mir das in einem Control ausgeben lasse, dann bleibt dieser leer.
Habe das vorhin statisch gemacht mit:
String OutputCmd = myProcess.StandardOutput.ReadToEnd();
das hat funktioniert, aber das er es live überträgt, hat irgendwie nicht hingehauen.
Weiß jemand woran das liegen könnte ? bzw. was mache ich falsch ...
Gruß
Budi
Nimm das Leben nicht zu ernst - denn du kommst nicht lebend raus!