应用程序重启的批处理文件

时间:2015-03-03 14:23:39

标签: file batch-file

我是新手,所以尽量保持我的问题相关!我正在尝试编写一个批处理文件,该文件将在2状态条件下重新启动应用程序,即当ping失败然后恢复时。我写了一些从本网站上给出的信息中收集到的东西(见下文),它只是在失败时重新启动它并改变DOS提示颜色,但它并不理想。任何人都可以指向我一般的方向重新启动应用程序 - > ping的情况?非常感谢!

@echo off
cls
set INTERVAL=120
:top
ping -n 1 -w 2000 192.168.1.10 | find "TTL=" 
IF ERRORLEVEL 1 (SET OUT=4F & echo Request timed out.) ELSE (SET OUT=2F)
IF ERRORLEVEL 1 goto reset
COLOR %OUT%
ping -n 2 -l 100 127.0.0.1 >nul
goto top
:reset
timeout %INTERVAL%
taskkill /IM  VmsClientApp.exe /F
Ping -n 1 -l 256 127.0.0.1 >nul
start /D "c:\Program Files\Avigilon\Avigilon Control Center Client\" VmsClientApp.exe
echo The Client is now loading...
goto top

1 个答案:

答案 0 :(得分:0)

@echo off
    setlocal enableextensions disabledelayedexpansion
    set "interval=120"
    cls

:up
    color 2f
    set "down="

:test
    ping -n 1 -w 2000 192.168.1.10 | find "TTL=" 
    if not errorlevel 1 if defined down goto :restart
    if     errorlevel 1 set "down=1" & color 4f
    timeout %interval%
    goto :test

:restart
    taskkill /IM  VmsClientApp.exe /F
    start "" /D "c:\Program Files\Avigilon\Avigilon Control Center Client" VmsClientApp.exe
    goto :up