如何以静默方式运行CMD或.bat文件?我希望阻止向用户显示CMD界面.
包括这个短语
@echo off
就在你的蝙蝠脚本的顶部.
我在StackOverflow中提出了一种在后台运行批处理文件的方法(没有显示DOS窗口)
这应该回答你的问题.
这里是:
在第一个脚本中,使用以下行调用第二个脚本:
wscript.exe invis.vbs run.bat %*
实际上,您正在使用以下命令调用vbs脚本:
脚本的[路径] \名称
脚本所需的所有其他参数(%*
)
然后,invis.vbs将使用Windows Script Host Run()方法调用您的脚本,该方法采用:
intWindowStyle:0表示"隐形窗口"
bWaitOnReturn:false表示您的第一个脚本不需要等待第二个脚本完成
请参阅完整的invis.vbs脚本的问题:
Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.Run """" & WScript.Arguments(0) & """" & sargs, 0, False ^ means "invisible window" ---|
Tammen的反馈后更新:
如果您在DOS会话中并且想要"在后台"启动另一个脚本,那么简单/b
(在上述相同问题中详述)就足够了:
您可以使用
start /b second.bat
从第一个批处理文件异步启动第二个批处理文件,该文件共享您的第一个窗口.
从http://www.battoexeconverter.com使用Advanced BAT到EXE Converter
这将允许您将批处理文件中的任何其他二进制文件嵌入到一个独立的完全静默的EXE及其免费软件中
我认为这是在不打开DOS窗口的情况下运行批处理文件的最简单,最简单的解决方案,当您想要安排一组定期运行的命令时,它会非常分散注意力,因此DOS窗口会不断弹出,这是您的解决方案.使用VBS脚本调用批处理文件...
Set WshShell = CreateObject("WScript.Shell" ) WshShell.Run chr(34) & "C:\Batch Files\ mycommands.bat" & Chr(34), 0 Set WshShell = Nothing
将上面的行复制到编辑器并使用.VBS扩展名保存文件.相应地编辑.BAT文件名和路径.
使用Bat To Exe Converter执行此操作
http://download.cnet.com/Bat-To-Exe-Converter/3000-2069_4-10555897.html
(选择直接下载链接)
1 - 打开Bat to Exe Converter,选择你的Bat文件.
2 - 在Option菜单中选择"Invisible Application",然后按下编译按钮.
完成!