如果没有响应,如何停止运行bat文件

时间:2014-04-09 08:02:23

标签: batch-file

我创建了一个bat文件,它向Windows注册表添加了密钥,然后调用另一个bat文件QGIS.bat(这个bat文件启动了一个名为QGIS的应用程序)。

它大部分时间都可以工作,但是当它调用QGIS.bat没有任何反应时,命令窗口保持打开状态,但QGIS(由QGIS.bat文件启动)将无法启动。 在命令窗口(cmd)中,它只是调用。\ usbgis \ apps \ qgis \ bin \ qgis.bat

(只是注意QGIS是一个从USB记忆棒运行的便携式应用程序,可能是问题的一部分吗?)

所以我的问题。有没有办法可以终止一个bat文件,如果它在3分钟内没有关闭,或者另一个bat文件没有启动?

谢谢,

1 个答案:

答案 0 :(得分:0)

这就是我在评论中所说的:

@echo off
setlocal enabledelayedexpansion

set sPath=C:\Program Files\Internet Explorer
set sprog=iexplore.exe
set inc=0

:loop
if exist "%sPath%\%sProg%" (echo %sProg%) else exit /b
set /a inc+=1
if "!inc!" equ "30" (Echo Exiting & exit /b)
for /f %%a in (
  'tasklist /NH /FI "Imagename eq %sProg%"^|findstr /i "INFO:"') do (
     if not errorlevel 1 (
       ping -n 11 127.0.0.1>nul
       goto :loop
     )
)

显然更改路径和文件以匹配您的路径和文件。我只需要在这里测试一些东西。