5Sep

Παρτίδα δέσμης για την υπό όρους επανεκκίνηση μιας εφαρμογής

Τα κοινά συστήματα και / ή περιβαλλοντικά συμβάντα όπως επαναφορά από κατάσταση αναμονής ή απώλεια σύνδεσης δικτύου μπορεί να προκαλέσουν προβλήματα σε ορισμένες εφαρμογές που αναμένουν να είναι πάντα συνδεδεμένες και συνδεδεμένες.Έτσι, αν έχετε μια συγκεκριμένη εφαρμογή που συντρίβει ή πηγαίνει σε κατάσταση "δεν ανταποκρίνεται" κάπως συχνά και μια επανεκκίνηση είναι η μόνη λύση για αυτό, έχουμε μια απλή επιδιόρθωση για σας, με τη μορφή ενός προσαρμόσιμου δέσμης ενεργειών για να σκοτώσει απλά την εφαρμογή καικάντε επανεκκίνηση.

Εκτός από την προφανή κατάσταση παραπάνω, αυτό το σενάριο μπορεί να χρησιμοποιηθεί για μια ποικιλία χρήσιμων εργασιών, όπως:

  • Εύκολη επανεκκίνηση μιας εφαρμογής με διπλό κλικ ή χρησιμοποιώντας ένα πλήκτρο πρόσβασης.
  • Επανεκκινήστε ένα πρόγραμμα μόνο όταν είναι κρεμασμένο ή δεν ανταποκρίνεται.
  • Εκτέλεση ως προγραμματισμένη εργασία για να βεβαιωθείτε ότι μια εφαρμογή εκτελείται πάντα.
  • Οπουδήποτε αλλού θέλετε να αυτοματοποιήσετε την υπό όρους επανεκκίνηση μιας εφαρμογής.

Προσαρμογή του σεναρίου θα πρέπει να είναι αρκετά αυτονόητη από τα σχόλια, οπότε απλά ρυθμίστε τη δέσμη ενεργειών κατάλληλα και όλοι είστε ρυθμισμένοι.

Η δέσμη ενεργειών

@ECHO OFF ECHO Εφαρμογή επανεκκίνησης ECHO Γράφει ο / η: Jason Faulkner ECHO SysadminGeek.com ECHO.ΗΧΩ.SETLOCAL EnableExtensions REM Εισάγετε τις πληροφορίες της εφαρμογής.SET AppName = Όνομα εφαρμογής SET ExeFile = FileToLaunch.exe SET ExePath = C: PathToApplication REM Επιλέξτε τις συνθήκες για να σκοτώσετε την εφαρμογή.REM Η τιμή 1 = Ναι, 0 = Όχι SET KillIfRunning = 1 SET KillIfNotResponding = 1 SET KillIfUnknownStatus = 1 REM Ορίστε πότε πρέπει να ξεκινήσει η εφαρμογή: REM 1 = Έναρξη μόνο αν η διαδικασία έχει προηγουμένως σκοτωθεί.REM 0 = Ξεκινήστε την εφαρμογή ανεξάρτητα.SET StartOnlyIfKilled = 1 SET KillStatus = "% TEMP% KillStatus.tmp.txt" SET Επιτυχία = 0 ECHO Θανάτωση υπάρχουσας% AppName% στιγμής. .. IF{ % KillIfRunning%} =={ 1} ΚΛΗΣΗ: CheckKillStatus "% ExeFile%"RUNNING" IF{ % KillIfNotResponding%} =={ 1} ΚΛΗΣΗ: CheckKillStatus "% EXEFILE%" "ΑΠΑΓΟΡΕΥΕΤΑΙ" IF{ % KillIfUnknownStatus%} =={ 1} CALL: CheckKillStatus "% EXEFILE%" "UNKNOWN" ECHO.Αν το{ % StartOnlyIfKilled%} =={ 1}( IF{ % Success%} =={ 0} τέλος GOTO) ECHO Επανεκκίνηση% AppName%. .. START% "ExeFile%" "% ExePath %% ExeFile%" ECHO.ΑΝ ΥΠΑΡΧΕΙ% KillStatus% DEL / F / Q% KillStatus% ENDLOCAL: CheckKillStatus ECHO Θανάτωση με την κατάσταση:% ~ 2 TASKKILL / FI "ΚΑΤΑΣΤΑΣΗ eq% ~ 2" / IM "% ~ 1" / F>% KillStatus% SET / P KillResult = & lt;(%% A% = A% = A% = A% = A) =={ SUCCESS}SET / A Success =% Success% + 1): Τέλος

Συμπέρασμα

Ενώ μπορείτε να βρείτε εφαρμογές εκεί έξω που εκτελούν βασικά την ίδια λειτουργία, χρησιμοποιώντας ένα απλό script όπως αυτό αποφεύγει να έχει "άλλο πρόγραμμα" τρέχει στο παρασκήνιο.