Also habe ich eine EXE zu meiner Projektlösung hinzugefügt. Die EXE macht einiges und gibt Daten über stdout aus. Ich möchte die Ausgabe erfassen, aber noch wichtiger, wie führe ich diese EXE in meinem Programm aus?C# - So rufen Sie eine in Projektlösung hinzugefügte EXE auf
6
A
Antwort
7
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "myExec.exe";
p.Start();
3
Process.Start
. Um stdout zu erfassen, müssen Sie es über ProcessStartInfo
umleiten - es gibt ein Beispiel auf MSDN. Stellen Sie sicher, dass die exe zum Kopieren in das Ausgabeverzeichnis (bin/release etc.) markiert ist.
Wenn Sie sowohl von stdout und stderr lesen müssen, wird es schwierig (mit einer naiven Implementierung gibt es ein Risiko von Deadlock durch Pufferung usw.) ... here's ein Beispiel mit Worker-Threads.
Verwandte Themen
- 1. So rufen Sie .exe innerhalb asp Seite
- 2. So rufen Sie eine EXE-Datei in Button-Klick von ASP.Net auf?
- 3. So rufen Sie eine Vorlagenmethode auf?
- 4. So rufen Sie XML-Knotenattribute in C#
- 5. So rufen Sie das zuletzt hinzugefügte Listenansichtselement in WPF ListView auf
- 6. So rufen Sie eine C++ API aus C#
- 7. So rufen Sie Monitor.TryEnter auf
- 8. So rufen Sie eine schmucklose C++ - Funktion von C++/CLI
- 9. So rufen Sie das vollständige Wörterbuch in C auf #
- 10. So rufen Sie XAML-Code in C# Körper auf?
- 11. So rufen Sie JavaScript in XML auf?
- 12. So rufen Sie UDF in DataStage auf?
- 13. So rufen Sie ein externes Programm mit Parametern auf?
- 14. So rufen Sie ViewChild in Runtime auf?
- 15. So rufen Sie eine Hostfunktion in einem CUDA-Kernel auf?
- 16. So rufen Sie eine verschachtelte Niveaustufe in Python auf?
- 17. So rufen Sie eine Methode in Java mit Reflektion auf
- 18. So rufen Sie eine Skalarfunktion in einer gespeicherten Prozedur auf
- 19. So rufen Sie eine Funktion in einem Objekt auf
- 20. So rufen Sie eine Erlang-Funktion in Elixir auf
- 21. So rufen Sie eine Webseite mit C# ab?
- 22. So rufen Sie window.alert ("Nachricht") auf; von C#?
- 23. So rufen Sie MSBuild von C#
- 24. So rufen Sie eine generische Erweiterungsmethode mit Reflektion auf?
- 25. So rufen Sie C# -Bibliotheken aus Excel auf?
- 26. So rufen Sie NetworkStream.Read() ohne Blockierung auf?
- 27. C# So rufen Sie mit mehr als einem Parameter auf
- 28. So rufen Sie DeviceIOControl-Code asynchron auf?
- 29. So rufen Sie eine Template-Member-Funktion auf?
- 30. So rufen Sie eine C++ - Klassenbibliothek von VB6
diese Antwort funktionierte. Vielen Dank! – user40856
obwohl der relative Dateipfad nur funktionieren wird, wenn das aktuelle Arbeitsverzeichnis nicht geändert wurde ... –
Wie übergebe ich Parameter an diese und wie rufe ich sie asynchron auf? –