bat文件后台运行方法

本文介绍了三种隐藏bat脚本运行时命令行窗口的方法:使用bat内置命令调整窗口属性、通过iexpress工具将bat文件打包为exe文件以及借助vbs脚本实现窗口隐藏。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

平常我们跑bat程序,会发现有一个黑乎乎的命令行窗口,很影响美观性,同时如果我在当前bat脚本里面运行程序的话,一旦关闭这个黑乎乎的窗口,就会将启动的程序连带着关闭。
这里我总结了网上几个解决该问题的方法
1.利用bat隐藏窗口的命令

@echo off

if “%1” == “h” goto begin

mshta vbscript:createobject(“wscript.shell”).run(“%~nx0 h”,0)(window.close)&&exit

:begin
将这段代码放在bat文件开头即可,这个方法的缺点是如果你要用这个bat文件做一个计划任务,那么它可能会报错(不清楚具体原因,但我自己遇到了)
但我后来发现改一下写法就行了:
%1 mshta vbscript:CreateObject(“WScript.Shell”).Run(“%~s0 ::”,0,FALSE)(window.close)&&exit
这个就不会有问题了

2.利用IEXPRESS打包成exe
具体执行方法如下:

点击【下一步】→【下一步】→【随便填个名字(下一步) 】→ 【下一步 】→ 【下一步】 → 【ADD(选好你的BAT文件 继续下一步)】→【 Install里面选你刚加进去的文件(下一步)】→ 【hidden(下一步)】→ 【下一步】 → 【保存打包好的文件(勾一下hidden下一步)】 → 【下一步】 → 【don‘t save】→【下一步】 → 【下一步】 → 完成
这个方法理论上是不会有方法一的问题,但我没测试过

3.vbs脚本大法

Set ws = CreateObject(“Wscript.Shell”)

ws.run “cmd /c 批处理程序名”,vbhide
亲测可用

注:如果要批处理程序名要改成相对路径的话,可以对vbs脚本修改成下面这样
Set ws = CreateObject(“Wscript.Shell”)

getfolder=left(wscript.scriptfullname,instrrev(wscript.scriptfullname,”\”)-1)

ws.run “cmd /c “+getfolder+”批处理程序名”,vbhide

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值