execution programme batchHello world !

Batch le langage interprété par cmd.exe sous windows et bien qu'assez sommaire peut rendre de bons services encore aujourd'hui. Il vous arrivera peut-être d'être confronté au cas ou un processus n'étant pas un service doive être maintenu en exécution mais que pas de bol, celui-ci étant codé par un éditeurs fétichistes des pieds, il finisse par planter. Vous pouvez vous lancer dans des discutions avec les développeurs mais la résolution de bug peut s'avérer longue et encore si le programme en question est toujours maintenu ... Par conséquent en attendant un patch éventuel vous trouverez avec batch la possibilité de résoudre ce souci assez facilement.

Citation :

@echo off

tasklist | find "thunderbird.exe" /C /i > nul

IF ERRORLEVEL == 1 start C:"Program FilesMozilla Thunderbirdthunderbird.exe"


Par exemple dans le script ci-dessus je teste l'exécution du programme thunderbird.exe. "tasklist" retourne la liste des processus en cours d'exécution sur la machine, la sortie de tasklist est envoyée à find qui vérifie la présence de la chaine "thunderbird.exe". En testant ensuite la valeur de "ERRORLEVEL" nous savons s'il faut relancer ou pas thunderbird.exe.

Adaptez ce script avec l'exécutable de votre choix et couplez le avec une tache planifiée et vous pourrez ainsi vous assurer que le processus en question sera automatiquement relancé en cas de crash.
Partager sur:
A propos de l'auteur:
Guillaume Jeantet: titulaire d'une licence pro et fort de quelques années d'expériences je suis administrateur système et développeur mais surtout un autodidacte dynamique et passionné. Je partage sur UBDT mes coups de coeurs et astuces.

Autres articles qui pourraient vous intéresser.

windows 10 mobile anniversary updateWindows 10 mobile anniversary update disponible
L'anniversary update de windows 10 mobile est maintenant disponible.
windows 10 rapideRendre windows 10 plus réactif
Une astuce toute simple pour accélérer windows, le rendre plus rapide et réactif.
thunderbird 38Thunderbird 38: bug "adjonction de" résolu?
Thunderbird n'est pas mort et cette semaine la version 38 est publié. C'est une étape importante pour l'équipe de thunderbird car c'est la première release entièrement gérée par les volontaires.
firefox confidentialiteFirefox 33.1: affirmez votre liberté
Firefox célèbre ses 10 ans avec la version 33.1 mettant l'accent sur la confidentialité de vos données: Ajout de DuckDuckGo et bouton d’effacement de l'historique récent.
firefox 33Retour sur les nouveautés de firefox 33
Voici ce qu'il faut retenir à propos des nouveautés de firefox 33, explications sur openh264, améliorations de recherche, performances, restauration de sessions et outils pour développeurs.
#1 Le par Nem
Bonjour, je viens de trouver votre petite astuce qui m'intéresse fortement. Toutefois, je voudrais pour ma part faire l'effet inverse:
Lancer une tache qui va vérifier si un programme N'est PAS en cours d’exécution avant de démarrer.
Et si le programme est en fonctionnement, attendre qu'il soit terminé avant de démarrer la tache.

Est-ce possible?

En vous remerciant par avance.

Cordialement,

Nem
#2 Le par Guillaume
Oui: faites une boucle qui teste l’exécution de de l’exécutable et n'en sortez que lorsque ERRORLEVEL est égal à 1 (voir les boucles do / while)

Une fois sorti de la boucle vous êtes certaine que l’exécutable est arrêté vous pouvez lancer une autre tache.

Cependant selon le contexte dans lequel ce système est mis en place je doute que batch soit vraiment un choix judicieux (ça me semble être un peu "bricolage"), malgré tout dans la théorie cela doit fonctionner.

Proposer un nouveau commentaire

Votre pseudo s'il vous plaît :

Email (Facultatif, n'est pas affiché et permet de recevoir des notifications de validation / réponses):

Votre site Web (facultatif) :

Exprimez vous :

:arrow::D:confused::cool::cry::eek::evil::!::idea:lol:mad::|:?::p:redface::rolleyes::(:):wink: