win7下用批处理启动两个程序,并隐藏dos窗口,如何实现?
jetAudio.bat文件是先启动我的播放器程序,然后启动歌词程序,内容如下:@echooffstart"""D:\ProgramFiles\JetAudio\JetA...
jetAudio.bat文件是先启动我的播放器程序,然后启动歌词程序,内容如下:
@echo off
start "" "D:\Program Files\JetAudio\JetAudio.exe"
@echo off & setlocal enableextensions
echo WScript.Sleep 300 > %temp%.\tmp$$$.vbs
set /a i = 3
:Timeout
if %i% == 0 goto Next
setlocal
set /a i = %i% - 1
cls
::echo 启动歌词程序倒计时开始
::echo ##################################
::echo # #
::echo # [%i%]秒后程序开始运行 #
::echo # #
::echo ##################################
::去掉上面的双冒号就可以显示上面的提示
cscript //nologo %temp%.\tmp$$$.vbs
goto Timeout
goto End
:Next
cls & echo .
for %%f in (%temp%.\tmp$$$.vbs*) do del %%f
start "" "C:\Program Files (x86)\Minilyrics\MiniLyrics.exe"
exit
我执行上面这个批处理程序,可以连续启动。但是有个dos窗口。
下面jetAudio.vbs文件是隐藏dos窗口启动上面批处理程序,内容如下:
DIM objShell
Set objShell=wscript.createObject("WScript.Shell")
iReturn=objShell.Run("cmd.exe /C jetAudio.bat",0,TURE)
我把这两个文件放在一个目录里执行jetAudio.vbs,可以实现隐藏dos窗口,连续启动我的歌曲播放程序和歌词程序。
---------
问题:
我想把两个文件用压缩程序,压成一个自解压自执行文件。
比如 jetAudio.exe, 创建这个exe压缩文件之后,让它解压后运行jetAudio.vbs,就只能启动我的歌曲播放器程序,歌词程序不会启动了。
如果只把jetAudio.bat,创建exe压缩文件,让它解压后运行jetAudio.bat,就会连续启动我的两个程序,但是有dos窗口出现了。
请问我上面批处理程序,哪里有问题? 为啥跟vbs一起制作可执行压缩程序后就无法启动我的第二个程序了。
谢谢,多谢。 展开
@echo off
start "" "D:\Program Files\JetAudio\JetAudio.exe"
@echo off & setlocal enableextensions
echo WScript.Sleep 300 > %temp%.\tmp$$$.vbs
set /a i = 3
:Timeout
if %i% == 0 goto Next
setlocal
set /a i = %i% - 1
cls
::echo 启动歌词程序倒计时开始
::echo ##################################
::echo # #
::echo # [%i%]秒后程序开始运行 #
::echo # #
::echo ##################################
::去掉上面的双冒号就可以显示上面的提示
cscript //nologo %temp%.\tmp$$$.vbs
goto Timeout
goto End
:Next
cls & echo .
for %%f in (%temp%.\tmp$$$.vbs*) do del %%f
start "" "C:\Program Files (x86)\Minilyrics\MiniLyrics.exe"
exit
我执行上面这个批处理程序,可以连续启动。但是有个dos窗口。
下面jetAudio.vbs文件是隐藏dos窗口启动上面批处理程序,内容如下:
DIM objShell
Set objShell=wscript.createObject("WScript.Shell")
iReturn=objShell.Run("cmd.exe /C jetAudio.bat",0,TURE)
我把这两个文件放在一个目录里执行jetAudio.vbs,可以实现隐藏dos窗口,连续启动我的歌曲播放程序和歌词程序。
---------
问题:
我想把两个文件用压缩程序,压成一个自解压自执行文件。
比如 jetAudio.exe, 创建这个exe压缩文件之后,让它解压后运行jetAudio.vbs,就只能启动我的歌曲播放器程序,歌词程序不会启动了。
如果只把jetAudio.bat,创建exe压缩文件,让它解压后运行jetAudio.bat,就会连续启动我的两个程序,但是有dos窗口出现了。
请问我上面批处理程序,哪里有问题? 为啥跟vbs一起制作可执行压缩程序后就无法启动我的第二个程序了。
谢谢,多谢。 展开
展开全部
把下面的代码加到你的批处理前面,就可以实现隐藏运行。
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~fs0 h",0)(window.close)&&exit
:begin
rem 下边开始是批处代码了
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~fs0 h",0)(window.close)&&exit
:begin
rem 下边开始是批处代码了
更多追问追答
追问
加进去后,运行批处理文件会弹出一个空白dos窗口,很快自动关闭,开始运行我的程序。
能不能不弹出窗口?
多谢!
追答
那个弹出的dos窗口极短的时间就关闭了哦,一般也就是一闪即消失,除非电脑较慢。
闪那一下,就是运行上面最长的一行命令,它的功能就是隐藏运行下面的命令。
如果用批处理一点也不出现窗口,还真不好办。除非用其他的方法如vbs或其他程序,
问题是批处理不出来了,调用批处理的程序仍然会弹出的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询