如何从ASP.NET应用程序运行CMD.exe命令?

时间:2011-11-23 00:23:41

标签: c# asp.net iis-7 cmd iis-7.5

这是我的代码:

string ex = "java -jar \"" + Settings.ClosureCompilerJarLocation + "\" --js \"" + C2runtimePath + "\" --js_output_file \"" + C2runtimeCompiledPath + "\" --language_in ECMASCRIPT5_STRICT --compilation_level ADVANCED_OPTIMIZATIONS --externs \"" + Settings.C2ExternsFolderLocation + "jquery-externs.js\" --externs \"" + Settings.C2ExternsFolderLocation + "c2-externs.js\"";
System.Diagnostics.Process.Start("CMD.exe", ex);

在执行之前打印的ex示例:

  

java -jar   “C:\的Inetpub \ wwwroot的\ ScirraNew \静\ AC \关闭编译\ compiler.jar”   --js“C:\ inetpub \ wwwroot \ arcade \ games \ 46 / c2runtime.js”--js_output_file“C:\ inetpub \ wwwroot \ arcade \ games \ 46 / c2runtime_COMPILED.js”   --language_in ECMASCRIPT5_STRICT --compilation_level ADVANCED_OPTIMIZATIONS --externs   “C:\的Inetpub \ wwwroot的\ ScirraNew \静\ AC \模板\ jQuery的externs.js”   --externs“C:\ inetpub \ wwwroot \ ScirraNew \ static \ ac \ templates \ c2-externs.js”

  • 它不会抛出任何错误,也不会完成命令
  • 如果我将命令复制+粘贴到cmd.exe中,它运行得很好

2 个答案:

答案 0 :(得分:3)

您需要在生成的WaitForExit()实例上调用Process

答案 1 :(得分:1)

您应该使用所需的参数直接执行java.exe

传递cmd.exe命令行不会做任何事情。