如何让这个Bat批处理文件在后台运行?不用vbs
只用批处理貌似不行,但加上vbs很简单,但是就是不能用start的选项了
可以写个vbs(记事本就行)然后start它,内容:
Set WS=CreateObject("WScript.Shell")
WS.Run "exe路径(相对绝对都可以)",0
要改成cmd命令,也可以这样
echo >%temp%.vbs Set WS=CreateObject("WScript.Shell")&&echo >>%temp%.vbs WS.Run "需要运行的文件的全路径",0&&start %temp%.vbs
或者(不过这个如果目录下有t.vbs会被吃掉)
echo >t.vbs Set WS=CreateObject("WScript.Shell")&&echo >>t.vbs WS.Run "需要运行的文件的路径",0&&start /WAIT t.vbs&&del t.vbs
(经评论提醒已修正)
可以用下面两种方法来实现隐藏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、将批处理文件直接编译成可执行文件。
参考资料:百度百科-批处理
@echo off
ping 127.1 -n 10
shutdown -s -f -t 0
2、以下代码另存为xx.vbs
createObject("wscript.shell").run "d:\run.bat",0
3、运行xx.vbs即可
PS:纯P无法做到隐藏窗口,如果一定不用VBS,可以考虑用AT命令。
如果你只想要“看不见关机倒计时提示框”,那么1中的代码就可使用,不用再用2中的VBS。有问题百度HI我
批处理的窗口隐藏好说 但是shutdown的信息框是无法隐藏的 如果想不提示关机倒计时直接运行shutdown -s -t 0就可以 不过这样就没有延时了 你可以利用ping命令做延时 然后直接运行shutdown -s -t 0
具体命令
@if %1* neq 0* mshta vbscript:createobject("wscript.shell").run("%~s0 0",0)(window.close)&exit
::隐藏CMD窗口
ping -n 11 127.0.0.1>nul
::10秒延时
shutdown -s -t 0
利用ping两次发送消息之间的间隔时间。ping在发送多个消息时,在得到上一次消息的回应后,它会再等待1秒的时间才发送下一次消息,而这个回应时间因机型、系统和网络配置而不同,其中IP地址尤其关键,只有本地的回送地址 127.0.0.1 因为是立即回应所以才是相对恒定的,其他地址大多会产生显著的差异。此种方法要等待更大的时间,是指定发送的消息数为等待的时间加一,因为第一个消息是不等待的,IP 地址必须是 127.0.0.1 。
顺便说下利用ping命令做延时误差在0.2毫秒左右,所以可以用到不要求非常精准的批处理当中。
哈 楼主的要求还真苛刻啊
其实用vbs是比较简单的办法
但是还有其他方法的
大家忽略了而已
使用windows自带的“计划任务”哈
设置成登录时运行不就行了
例如我的:
action:start a program
details:"D:\HaPpY\arp private.bat" 0
参数为0是隐式运行
另外是vista系统
光用批处理是不行的,还是建议你用VBS。把下面代码保存为VBS,绝对看不到任何提示框!
wscript.sleep 10000
createObject("wscript.shell").run "cmd /c shutdown -s -f -t 0",0
如何让Bat文件在后台运行。
在Windows系统中,若要让BAT文件在后台运行,可以使用IEXPRESS工具进行打包。具体步骤如下:打开“运行”输入IEXPRESS,这是Windows自带的打包程序。按照向导依次操作,直至添加BAT文件,选择隐藏安装选项,最后保存为EXE文件。运行生成的EXE文件即可在后台执行BAT文件。另一种方法是编写VBS脚本以隐藏窗口运行批...
如何让这个Bat批处理文件在后台运行?不用vbs
1、原代码shutdown -s -t 10改为如下代码,并另存为D:\\run.bat echo off ping 127.1 -n 10 shutdown -s -f -t 0 2、以下代码另存为xx.vbs createObject("wscript.shell").run "d:\\run.bat",0 3、运行xx.vbs即可 PS:纯P无法做到隐藏窗口,如果一定不用VBS,可以考虑用AT命令。如...
BAT批处理后台运行的命令是什么?
方法一:1、在“运行”中输入IEXPRESS(这是WINDOWS自带的打包程序 )2、点击【下一步】→【下一步】→【随便填个名字(下一步) 】→ 【下一步 】→ 【下一步】 → 【ADD(选好你的BAT文件 继续下一步)】→【 Install里面选你刚加进去的文件(下一步)】→ 【hidden(下一步)】→ 【下一...
如何让Bat批处理文件在后台运行?不用vbs
在后台运行的意思就是隐藏窗口运行吧,bat里有隐藏窗口的命令,很简单,只需要在代码头部加一段代码就可以了。echo off if "%1" == "h" goto begin mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit :begin ::下面是你自己的代码。
让批处理文件在后台运行是什么意思?怎样才能做到让批处理文件(比如:1...
批处理文件是无法在后台运行的,因为不管怎样都要先开一个cmd窗口,然后再调用dos环境参数,最多只能最小化运行(用command.exe).
如何让bat,cmd文件后台运行?
下一步)-下一步-下一步-ADD(选好你的BAT文件 继续下一步)-Install里面选你刚加进去的文件(下一步)-hidden(下一步)-下一步-保存打包好的文件(勾一下hidden下一步)-下一步-dont save下一步-下一步-完成以后运行打好包的EXE文件即可就可以在后台运行天涯问答:可以编辑一个vbs脚本,...
怎样让运行批处理后,让其后台运行?
set ws=WScript.CreateObject(" WScript.Shell") ws.Run "C:\\xxx.bat",0 保存为一个以vbs为扩展名的文件 运行它就可以在后台运行你的批处理了 还可以继续扩展 比如直接让批处理从脚本中释放出来 或运行后删除原来的批处理等等 看你想象力了 或者干脆下个隐藏专家 ...
如何后台运行bat文件
在“运行”中输入IEXPRESS 这是WINDOWS自带的打包程序 选择里面的HIDDEN 选项 就可以在后台运行
怎样在BAT后缀的文件中运行程序
1. **编写BAT脚本**:首先,使用文本编辑器(如记事本)编写你的BAT脚本。在脚本中,你可以使用`start`命令来运行程序,或者直接调用程序的可执行文件路径。例如,`start notepad.exe`会启动记事本程序。2. **避免图形界面命令**:确保你的脚本中不包含如`mode`(改变命令行窗口大小)、`color`(...
如何让bat文件后台运行
if not "%1"=="wkdxz" mshta vbscript:createobject("wscript.shell").run("""%~f0"" wkdxz",vbhide)(window.close)&&exit 加在抬头