运行bat时隐藏cmd窗口

运行bat时隐藏cmd窗口 命令怎么写呢?
2024-12-16 14:51:40
推荐回答(5个)
回答1:

可以用下面两种方法来实现隐藏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、将批处理文件直接编译成可执行文件。

参考资料:百度百科-批处理

回答2:

让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,还是闪了一下。

回答3:

可以编辑一个vbs脚本,在其中以隐藏窗口运行批处理程序。

------------------------------------------------------------
Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c 批处理程序名",vbhide
------------------------------------------------------------

将水平线中代码拷贝到记事本中,保存为"runbat.vbs"或者其它的名字(扩展名必须是.vbs),然后点击运行生成的脚本runbat.vbs,即可隐藏运行指定的批处理程序。

这个vbs脚本也可以在bat环境中直接调用,达到隐藏bat自身的目的。

具体参考资料如下面网址!还是不会的话你追问就是了!

回答4:

创建bat的快捷方式,然后点击快捷方式里面的属性>快捷方式>选择最小化运行就ok 了...

回答5:

Set ws = CreateObject("Wscript.Shell") 

ws.run "cmd /c shell",vbhide 

以上命令保存为vbs文件shell为你需要运行的批处理命令,也可以是批处理文件的绝对路径