Heim >Backend-Entwicklung >C++ >Wie kann ich Live -Konsolenausgabe von einer .NET -Anwendung erfassen und anzeigen?
Echtzeit-Konsolenausgabeaufnahme in .NET-Anwendungen
Dieses Beispiel zeigt, wie die Ausgabe einer Konsolenanwendung in einer .NET -Anwendung in Echtzeit erfasst und angezeigt wird.
<code class="language-csharp">using System.Diagnostics; namespace RealtimeConsoleOutput { class Program { static void Main(string[] args) { // Initiate the process for the console application. Process consoleApp = new Process(); // Configure process settings. consoleApp.StartInfo.FileName = "csc.exe"; // Assumes 'csc.exe' is in the system PATH consoleApp.StartInfo.Arguments = "/r:System.dll /out:sample.exe stdstr.cs"; consoleApp.StartInfo.UseShellExecute = false; consoleApp.StartInfo.RedirectStandardOutput = true; // Begin the process. consoleApp.Start(); // Continuously read and display output. while (!consoleApp.StandardOutput.EndOfStream) { string line = consoleApp.StandardOutput.ReadLine(); if (!string.IsNullOrEmpty(line)) // added null check for robustness Console.WriteLine(line); } // Wait for the console application to finish. consoleApp.WaitForExit(); } } }</code>
Detaillierte Erläuterung:
ProcessStartInfo.RedirectStandardOutput = true
: Dies leitet die Standardausgabe der Konsolenanwendung in die .NET -Anwendung um. while
Schleife liest kontinuierlich Zeilen aus consoleApp.StandardOutput
und zeigt sie mit Console.WriteLine()
an. Die Hinzufügung eines Null -Checks verbessert die Robustheit des Code. consoleApp.StandardOutput.EndOfStream
: Diese Überprüfung, ob alle Ausgaben empfangen wurden. consoleApp.WaitForExit()
: Dies stellt sicher, dass die .NET -Anwendung auf den Abschluss der Konsolenanwendung wartet. Für eine umfassende Ausgangsaufnahme sollten Sie den Standardfehlerstrom mit RedirectStandardError = true
.
Das obige ist der detaillierte Inhalt vonWie kann ich Live -Konsolenausgabe von einer .NET -Anwendung erfassen und anzeigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!