Почетна » како да » Батцх скрипта за условно поновно покретање апликације

    Батцх скрипта за условно поновно покретање апликације

    Уобичајени догађаји у систему и / или околини, као што је враћање из стања приправности или губитак мрежне везе, могу узроковати проблеме за одређене апликације које очекују да буду увијек укључене и повезане. Дакле, ако имате одређену апликацију која се руши или прелази у режим "не реагује" често и рестарт је једини поправак за њега, имамо једноставну поправку за вас у облику прилагодљивог батцх скрипта да једноставно убијете апликацију и рестартуј га.

    Поред очигледне ситуације изнад, ова скрипта се може користити за разне корисне задатке, као што су:

    • Једноставно поново покрените апликацију двоструким кликом или помоћу врућег тастера.
    • Поново покрените програм само када је објешен или не одговара.
    • Покрените као планирани задатак да бисте били сигурни да је апликација увек у току.
    • Било гдје другдје желите аутоматизирати увјетно поновно покретање апликације.

    Прилагођавање скрипте требало би да буде прилично самостално објашњено коментарима, тако да само конфигуришете скрипт на одговарајући начин и сви сте постављени.

    Скрипта

    @ЕЦХО ОФФ ЕЦХО Рестарт Апплицатион ЕЦХО Написала: Јасон Фаулкнер ЕЦХО СисадминГеек.цом ЕЦХО. ОДЈЕК. СЕТЛОЦАЛ ЕнаблеЕктенсионс РЕМ Унесите информације о апликацији. СЕТ АппНаме = Назив апликације СЕТ ЕкеФиле = ФилеТоЛаунцх.еке СЕТ ЕкеПатх = Ц: ПатхТоАпплицатион РЕМ Изаберите услове за убијање апликације. РЕМ Вредност 1 = Да, 0 = Нема СЕТ КиллИфРуннинг = 1 СЕТ КиллИфНотРеспондинг = 1 СЕТ КиллИфУнкновнСтатус = 1 РЕМ Одредите када покренути апликацију: РЕМ 1 = Покрени само ако је процес претходно био убијен. РЕМ 0 = Покрените апликацију без обзира на то. СЕТ СтартОнлиИфКиллед = 1 СЕТ КиллСтатус = "% ТЕМП% КиллСтатус.тмп.ткт" СЕТ Успјех = 0 ЕЦХО Убијање постојећег% АппНаме% инстанце ... ИФ % КиллИфРуннинг% == 1 ПОЗИВ: ЦхецкКиллСтатус "% ЕкеФиле%" "РУННИНГ "ИФ % КиллИфНотРеспондинг% == 1 ПОЗИВ: ЦхецкКиллСтатус"% ЕкеФиле% "" НЕ РЕСПОНДИНГ "ИФ % КиллИфУнкновнСтатус% == 1 ПОЗИВ: ЦхецкКиллСтатус"% ЕкеФиле% "" УНКНОВН "ЕЦХО. АКО % СтартОнлиИфКиллед% == 1 (АКО % успеха% == 0 ГОТО Крај) ЕЦХО Поновно покретање% АппНаме%… СТАРТ "% ЕкеФиле%" "% ЕкеПатх %% ЕкеФиле%" ЕЦХО. ИФ ЕКСИСТ% КиллСтатус% ДЕЛ / Ф / К% КиллСтатус% ЕНДЛОЦАЛ: ЦхецкКиллСтатус ЕЦХО Убиство са статусом:% ~ 2 ТАСККИЛЛ / ФИ "СТАТУС ек% ~ 2" / ИМ "% ~ 1" / Ф>% КиллСтатус% СЕТ / П КиллРесулт = < %KillStatus% FOR /F "tokens=1,* delims=:" %%A IN ("%KillResult%") DO ( ECHO %%A:%%B IF /I %%A==SUCCESS SET /A Success=%Success%+1 ) :End 

    Закључак

    Док тамо можете наћи апликације које изводе у суштини исту функцију, користећи једноставну скрипту као што је ова, избегава да се "још један програм" изводи у позадини.