C# 中執行批次檔及故障排除
在 C# 中,可以使用 Process
類別執行批次檔。然而,執行過程中可能會遇到錯誤。
常見問題:
例如,錯誤訊息 "ExitCode: 1 (Catch all for general errors)" 表示批次檔執行過程中出現了一個通用錯誤。
解:
為了診斷此錯誤,一種方法是重定向並檢查執行的批次檔案的輸出和錯誤流。這有助於深入了解錯誤原因。以下程式碼實現了此技術:
<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>
其他注意事項:
C:\Windows\System32
目錄下。 This revised output provides a more concise and natural-sounding explanation while maintaining the original meaning and keeping the image in its original format. The code is also formatted for better readability.
以上是如何解決在 C# 中執行批次檔時出現「ExitCode: 1」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!