如何使用ExecDos命令隐藏命令提示符窗口

时间:2015-09-15 11:16:54

标签: windows batch-file xampp nsis

我想在我的脚本中执行三个bat文件,问题是当我直接使用.bat运行这些execwait文件时,命令窗口打开,我想隐藏这些命令窗口,但它不是工作。我的代码只有3行。

ExecDos::exec '"catalina_start.bat"' 
ExecDos::exec '"mysql_start.bat"' 
ExecDos::exec '"apache_start.bat"'

我也试过这个nsExec命令,但仍然没有解决方案:

nsExec::Exec "cmd /C catalina_start.bat"
nsExec::Exec "cmd /C mysql_start.bat"
nsExec::Exec "cmd /C apache_start.bat"

这些.bat文件的一些背景,实际上这些是xampp设置的文件,xampp在内部使用这些文件来启动tomcat,mysql和apache。 我面临的问题是只有第一个bat文件被执行,i。即tomcat开始了(我可以在xampp控制台中看到),但是脚本没有继续前进,sql和apache没有开始。

2 个答案:

答案 0 :(得分:1)

批处理文件是否包含pause或阻止其完成的其他内容?

您应该只使用ExecWait '"cmd.exe" /k "$InstDir\catalina_start.bat"'(或/c)这样的内容开始,这样您就可以看到写入控制台的文本,包括任何错误。一旦它正常工作,你可以切换到一个隐藏控制台的exec插件......

答案 1 :(得分:1)

您可以将命令窗口从cmd /C catalina_start.bat更改为start /Min cmd /c catalina_start.bat,它将隐藏命令窗口