Heim >Backend-Entwicklung >C++ >Wie behebe ich „ExitCode: 1'-Fehler beim Ausführen von Batchdateien in C#?
Batchdateien ausführen und Fehlerbehebung in C#
In C# können Sie die Klasse Process
verwenden, um Batchdateien auszuführen. Bei der Ausführung können jedoch Fehler auftreten.
FAQ:
Zum Beispiel bedeutet die Fehlermeldung „ExitCode: 1 (Alles bei allgemeinen Fehlern abfangen)“, dass während der Ausführung der Batchdatei ein allgemeiner Fehler aufgetreten ist.
Lösung:
Um diesen Fehler zu diagnostizieren, besteht eine Möglichkeit darin, die Ausgabe- und Fehlerströme der ausgeführten Batchdatei umzuleiten und zu überprüfen. Dies kann helfen, Aufschluss über die Fehlerursache zu erhalten. Der folgende Code implementiert diese Technik:
<code class="language-csharp">public static void ExecuteCommand(string command) { int exitCode; ProcessStartInfo processInfo; Process process; processInfo = new ProcessStartInfo("cmd.exe", "/c " + command); processInfo.CreateNoWindow = true; processInfo.UseShellExecute = false; // 重定向输出和错误流 processInfo.RedirectStandardError = true; processInfo.RedirectStandardOutput = true; process = Process.Start(processInfo); process.WaitForExit(); string output = process.StandardOutput.ReadToEnd(); string error = process.StandardError.ReadToEnd(); exitCode = process.ExitCode; Console.WriteLine("输出>>" + (String.IsNullOrEmpty(output) ? "(无)" : output)); Console.WriteLine("错误>>" + (String.IsNullOrEmpty(error) ? "(无)" : error)); Console.WriteLine("ExitCode: " + exitCode.ToString()); process.Close(); }</code>
Weitere Hinweise:
C:\Windows\System32
befindet. Diese überarbeitete Ausgabe bietet eine prägnantere und natürlicher klingende Erklärung, während die ursprüngliche Bedeutung erhalten bleibt und das Bild im Originalformat bleibt. Der Code ist außerdem zur besseren Lesbarkeit formatiert.
Das obige ist der detaillierte Inhalt vonWie behebe ich „ExitCode: 1'-Fehler beim Ausführen von Batchdateien in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!