我想运行一个程序,然后在30秒后关闭该程序。
我写了两个批次文件,
第一个批处理文件正在运行该程序。该程序是热点盾。
鳕鱼是
@ECHO off
"C:Program Files (x86)Hotspot Shieldbinhsscp.exe"
timeout /t 30
"E:1.bat"
Exit
程序运行良好,但是30秒后,第二批批次文件将无法运行。
第二大批次文件的代码为
@ECHO off
cd "C:Program Files (x86)Hotspot Shieldbin"
Taskkill /IM "hsscp.exe" /F
Exit
当我添加此命令
时timeout /t 30
在第一个批处理文件中的此命令之前
"C:Program Files (x86)Hotspot Shieldbinhsscp.exe"
批处理文件下降。但是之后不倒数。
有什么问题?
我只想运行热点屏蔽,30秒后关闭。Windows是10。
谢谢
@ECHO off
START "" "C:Program Files (x86)Hotspot Shieldbinhsscp.exe"
timeout /t 30 >NUL
Taskkill /IM "hsscp.exe" /F
Exit
...hsscp.exe
可执行文件将在新过程中启动。由于>nul
,30秒的超时将变得沉默,并且taskkill
的当前目录无关紧要。
start
命令中的第一个双重引用的参数是窗口标题,因此start
命令中的额外引号提供了一个空标题。
我不确定它是否仍然正确,但是热点屏蔽可执行文件可执行于接受-quit
参数。如果是这种情况,那么它肯定是一个更好的选择,而不是用TaskKill
强行关闭它。
这很值得一试:
@Echo Off
CD /D "%ProgramFiles(x86)%Hotspot Shieldbin" 2>Nul || Exit /B
Start hsscp
Timeout 30 /NoBreak > Nul
Start hsscp -quit