Batch skripta za uvjetno ponovno pokretanje aplikacije

Sadržaj:

Batch skripta za uvjetno ponovno pokretanje aplikacije
Batch skripta za uvjetno ponovno pokretanje aplikacije

Video: Batch skripta za uvjetno ponovno pokretanje aplikacije

Video: Batch skripta za uvjetno ponovno pokretanje aplikacije
Video: Prediction on Switzerland - April - September 2023 CERN - Aliens - WEF - Underground Tunnels etc. - YouTube 2024, Travanj
Anonim

Zajednički sustav i / ili događaja na okoliš, kao što su nastavak iz stanja mirovanja ili gubitka mrežna veza može uzrokovati probleme za određene aplikacije koje očekuju da se uvijek i povezano. Dakle, ako imate određeni program koji ruši ili ide u „ne reagira” modu nešto češće, a ponovno je jedini škripac za to, imamo jednostavan škripac za vas u obliku prilagodljivim serije skripte jednostavno ubiti aplikaciju i ponovno ga pokrenite.

Osim očite situacije iznad, ova skripta može se koristiti za različite korisne zadatke, kao što su:

  • Jednostavno ponovo pokrenite aplikaciju dvostrukim klikom ili korištenjem vruće tipke.
  • Ponovno pokrenite program samo kada je obješen ili ne reagira.
  • Pokrenite kao zakazani zadatak da biste bili sigurni da aplikacija uvijek radi.
  • Bilo gdje drugdje želite automatizirati uvjetno ponovno pokretanje aplikacije.

Prilagođavanje skripte trebalo bi biti prilično jasno po komentarima, stoga jednostavno konfigurirati skriptu na odgovarajući način i svi ste postavljeni.

Skripta

@ECHO OFF ECHO Restart Application ECHO Written by: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. SETLOCAL EnableExtensions REM Enter the application information. SET AppName=Application Name SET ExeFile=FileToLaunch.exe SET ExePath=C:PathToApplication REM Select the conditions to kill the application. REM A value of 1 = Yes, 0 = No SET KillIfRunning=1 SET KillIfNotResponding=1 SET KillIfUnknownStatus=1 REM Specify when to start the application: REM 1 = Start only if the process was previous killed. REM 0 = Start the application regardless. SET StartOnlyIfKilled=1 SET KillStatus='%TEMP%KillStatus.tmp.txt' SET Success=0 ECHO Killing existing %AppName% instance… IF {%KillIfRunning%}=={1} CALL:CheckKillStatus '%ExeFile%' 'RUNNING' IF {%KillIfNotResponding%}=={1} CALL:CheckKillStatus '%ExeFile%' 'NOT RESPONDING' IF {%KillIfUnknownStatus%}=={1} CALL:CheckKillStatus '%ExeFile%' 'UNKNOWN' ECHO. IF {%StartOnlyIfKilled%}=={1} ( IF {%Success%}=={0} GOTO End ) ECHO Restarting %AppName%… START '%ExeFile%' '%ExePath%%ExeFile%' ECHO. IF EXIST %KillStatus% DEL /F /Q %KillStatus% ENDLOCAL:CheckKillStatus ECHO Killing with status: %~2 TASKKILL /FI 'STATUS eq %~2' /IM '%~1' /F > %KillStatus% SET /P KillResult= < %KillStatus% FOR /F 'tokens=1,* delims=:' %%A IN ('%KillResult%') DO ( ECHO %%A:%%B IF /I {%%A}=={SUCCESS} SET /A Success=%Success%+1 ):End

Zaključak

Iako možete naći programe vani koji obavljaju u osnovi istu funkciju, koristeći jednostavne skripte, kao što to izbjegava imaju „još jedan program za” trčanje u pozadini.

Preporučeni: