我正在开发一个控制Web应用程序中某些.cmd的项目。现在我陷入了困境。我想将批处理文件中的错误消息传递给c#。这意味着如果.cmd中发生任何错误,我的网络应用程序中将显示一条错误消息。我怎样才能做到这一点?我是初学者。我真的没有得到任何解决方案。
答案 0 :(得分:2)
基本上你吸收了所有的控制台,并根据你知道的退出代码是否有错误然后将其传递给你的客户
processInfo = new ProcessStartInfo("cmd.exe", "/c " + command);
processInfo.CreateNoWindow = true;
processInfo.UseShellExecute = false;
// *** Redirect the output ***
processInfo.RedirectStandardError = true;
processInfo.RedirectStandardOutput = true;
process = Process.Start(processInfo);
process.WaitForExit();
// *** Read the streams ***
string output = process.StandardOutput.ReadToEnd();
string error = process.StandardError.ReadToEnd();
错误可以传递给客户端。发生这种情况的确切方法取决于您的Web实现
答案 1 :(得分:0)
string output = process.StandardOutput.ReadToEnd();
string error = process.StandardError.ReadToEnd();
使用输出变量显示标准输出,使用错误变量显示标准错误。
非常感谢#Braim代码