@echo off

title Process Guard Tool v1.0 - Powered by BenhoN

set _task=test.exe
set _svr=D:\test\test.exe
set _des=start.bat

:checkstart
for /f "tokens=5" %%n in ('qprocess.exe ^| find "%_task%" ') do (
 if %%n==%_task% (goto checkag) else goto startsvr
)

:startsvr
echo %time%
echo ******* Startup Program Finished *******
echo Program was started at %time%, Please check the log file. >> Process_Guard.txt
echo start %_svr% > %_des%
echo exit >> %_des%
start %_des%
set/p=.<nul
for /L %%i in (1 1 10) do set /p a=.<nul&ping.exe /n 2 127.0.0.1>nul
echo.
echo Wscript.Sleep WScript.Arguments(0) >%tmp%\delay.vbs
cscript //b //nologo %tmp%\delay.vbs 10000
del %_des% /Q
echo ******* Startup Program Finished *******
goto checkstart

:checkag
echo %time% Program is Running, Check status after 10 seconds...
echo Wscript.Sleep WScript.Arguments(0) >%tmp%\delay.vbs
cscript //b //nologo %tmp%\delay.vbs 10000
goto checkstart