5Sep

Batch Script til betinget genstart af et program

click fraud protection

Fælles system- og / eller miljømæssige begivenheder som genoptagelse fra standby eller tab af netværksforbindelse kan forårsage problemer for visse applikationer, som forventer at være tændt og tilsluttet. Så hvis du har en bestemt applikation, der nedbryder eller går i tilstanden "ikke reagerer" noget ofte, og en genstart er den eneste løsning til det, har vi en simpel løsning til dig i form af et brugerdefineret batch script til blot at dræbe applikationen oggenstart det.

Ud over den indlysende situation ovenfor kan dette script bruges til en række nyttige opgaver, såsom:

  • Genstart enkelt et program ved at dobbeltklikke eller bruge en genvejstast.
  • Genstart kun et program, når det hænger eller ikke reagerer.
  • Kør som en planlagt opgave for at sikre, at et program altid kører.
  • Overalt ellers vil du automatisere betinget genstart af en applikation.

Tilpasning af scriptet skal være ret selvforklarende af kommentarerne, så konfigurér scriptet korrekt, og du er helt indstillet.

instagram viewer

Skriften

@ECHO OFF ECHO Genstart ansøgning ECHO Skrevet af: Jason Faulkner ECHO SysadminGeek.com ECHO.EKKO.SETLOCAL EnableExtensions REM Indtast programoplysningerne. SET AppName = Programnavn SET ExeFile = FileToLaunch.exe SET ExePath = C: PathToApplication REM Vælg betingelserne for at dræbe applikationen. REM En værdi på 1 = Ja, 0 = Ingen SET KillIfRunning = 1 SET KillIfNotResponding = 1 SET KillIfUnknownStatus = 1 REM Angiv, hvornår programmet skal startes: REM 1 = Start kun, hvis processen blev dræbt tidligere. REM 0 = Start ansøgningen uanset. SET StartOnlyIfKilled = 1 SET KillStatus = "% TEMP% KillStatus.tmp.txt" SET Succes = 0 ECHO Dræber eksisterende% AppName% forekomst. .. IF{ % KillIfRunning%} =={ 1} CALL: CheckKillStatus "% ExeFile%""RUNNING" IF{ % KillIfNotResponding%} =={ 1} CALL: CheckKillStatus "% ExeFile%" "NOT RESPONDING" IF{ % KillIfUnknownStatus%} =={ 1} CALL: CheckKillStatus "% ExeFile%" "UNKNOWN" ECHO.Hvis{ % StartOnlyIfKilled%} =={ 1}( Hvis{ % Success%} =={ 0} GOTO Slut) ECHO Genstart% AppName%. .. START "% ExeFile%" "% ExePath %% ExeFile%" ECHO.Hvis EXIST% KillStatus% DEL / F / Q% KillStatus% ENDLOCAL: CheckKillStatus ECHO Dræbte med status:% ~ 2 TASKKILL / FI "STATUS eq% ~ 2" / IM "% ~ 1" / F>;% KillStatus% SET / P KillResult = & lt;%% A: %% B IF / I{ %% A} =={ SUCCESS}( %% A) =={ SUCCESS}SET / A Succes =% Succes% + 1): Slut

Konklusion

Mens du kan finde programmer derude, der udfører stort set samme funktion, ved at bruge et simpelt script som dette undgår at have "endnu et program", der kører i baggrunden.