Frage

So habe ich eine EXE-Datei, um mein Projekt-Lösung. Die EXE hat einige Sachen und gibt Daten über stdout. Ich mag die Ausgabe erfassen, aber was noch wichtiger ist, wie kann ich das EXE in meinem Programm ausführen?

War es hilfreich?

Lösung

Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "myExec.exe";
p.Start();

Andere Tipps

Process.Start . Zur Erfassung stdout Sie müssen umgeleitet werden es über ProcessStartInfo - gibt es ein Beispiel auf MSDN . Stellen Sie sicher auch, dass die exe markiert in das Ausgabeverzeichnis kopiert werden (bin / Release usw.).

Wenn Sie von beiden stdout lesen müssen und stderr es schwierig wird (mit einer naiven Implementierung besteht das Risiko von Deadlock wegen Pufferung etc) ... hier ist Beispiel worker-Threads verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top