可以用下面两种方法来实现隐藏cmd窗口:
1、直接在.bat 文件最前边加上以下内容:
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit
:begin
2、新建一个记事本,里面输入:
CreateObject("WScript.Shell").Run "cmd /c D:/test.bat",0
其中 D:/test.bat 是 bat 文件的绝对路径
将此新建的记事本保存为 vbs 格式文件。
以后如有需要直接执行这个 vbs 文件即可。
扩展资料
其它的一些隐藏cmd窗口的方法(非常命令行)
1、用快捷方式
如果要使一个批处理本身隐藏,可以参考附件里的一个快捷方式,修改附件中的相关路径即可隐藏启动你的批处理。可以用vbs来建立一个 .lnk,其实用批处理也行。
2、利用系统服务
可以建立一个系统服务然后启动这个服务来启动批处理。缺点是启动服务较慢,需要管理员权限。
3、利用at计划任务
用at可以建立一个计划任务,在不输入 /interactive 参数可以后台运行。
4、将批处理文件直接编译成可执行文件。
参考资料:百度百科-批处理
让bat隐藏运行需要用vbs文件才能实现,
方法一:新建一个文本文档,写入
set ws=WScript.CreateObject("WScript.Shell")
ws.Run "d:\yy.bat",0
另存为vbs文件即可,其中d:\yy.bat是你需要运行的bat文件的路径。
方法二:用文本文档打开bat文件,在开头处写入
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REM
这个方法运行bat,还是闪了一下。
可以编辑一个vbs脚本,在其中以隐藏窗口运行批处理程序。
------------------------------------------------------------
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c 批处理程序名",vbhide
------------------------------------------------------------
将水平线中代码拷贝到记事本中,保存为"runbat.vbs"或者其它的名字(扩展名必须是.vbs),然后点击运行生成的脚本runbat.vbs,即可隐藏运行指定的批处理程序。
这个vbs脚本也可以在bat环境中直接调用,达到隐藏bat自身的目的。
具体参考资料如下面网址!还是不会的话你追问就是了!
创建bat的快捷方式,然后点击快捷方式里面的属性>快捷方式>选择最小化运行就ok 了...
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c shell",vbhide
以上命令保存为vbs文件shell为你需要运行的批处理命令,也可以是批处理文件的绝对路径