J'ai un programme qui s'exécute sous Windows mais parfois s'arrête. J'aimerais savoir si il y a moyen de surveiller son exécution (par exemple toutes les 5 minutes) et si il est à l'arrête, de le relancer.
Merci pour votre aide,
J'ai un programme qui s'exécute sous Windows mais parfois s'arrête. J'aimerais savoir si il y a moyen de surveiller son exécution (par exemple toutes les 5 minutes) et si il est à l'arrête, de le relancer.
Merci pour votre aide,
-- Jasmine --
Un crash ?
Tu as essayé de regarder dans l'observateur d'évènements s'il y avait quelque chose de suspect (cf. démarrer > exécuter > "eventvwr")
De la vallée du vent ...
Distribution d'applications .NET avec DreamShield
DreamShield, Le site, forum, blog, wiki & Jeux
Mon blog, Cours et tutoriels pour apprendre C#, forum C#, Offres d’emploi développeur C#
Merci de me répondre. Je ne connais pas grand chose à Windows. Je viens de regarder dans l'observateur d'évenements. J'ai une erreur qui revient plusieurs fois pour 'Application Hang'. Pour le système, c'est rempli de messages d'erreur dont les sources sont 'DCOM' et 'Service Control manager'. Aucune erreur ne semble liée au crash de mon programme perl. Ce programme doit se connecter à une base de données en ligne et y récupérer des informations. Le programme introduit un identifiant et récupère les valeurs associées. Le problème est que parfois, il ne retrouve pas cet identifiant et s'arrête avec un message d'erreur ... or cet identifiant est pourtant bien présent. J'ai résolu ce problème en modifiant le programme, ce qui est peut-être plus judicieux que de relancer un programme qui plante.
Merci pour ton conseil, je retiens 'eventvwr' pour les prochains problèmes.
-- Jasmine --
voici une question dans FAQ Batch qui peux t'aider:
http://windows.developpez.com/faq/ba...ster_processus
Merci pour ton intérêt.
J'avais penser écrire un second script en perl qui vérifie toutes les 5 minutes si le script1 tourne et le relance dans le cas contraire.
J'avais regardé la commande TaskList l'ennui est qu'elle ne me permet pas de vérifier le nom du script en cours d'exécution et donc que perl.exe apparait déjà une première fois pour le script2 qui tourne. Il faudrait donc vérifier qu'il apparait bien 2 fois et non une. Je trouvais cela fort compliqué. Maintenant, je ne m'y connais pas assez mais il y a peut-être moyen d'écrire un script en bash qui face cela et ainsi que si perl.exe apparit dans la liste cela ne provienne que du script1.
-- Jasmine --
il y a une autre solution (mais un peu compliquée)
- il faut mettre un titre à la fenêtre du scripts qui s'exécute (en batch c'est la commande title suivie du nom de la fenetre voulu)
- l'utilitaire CMDOW permet de manipuler les fenêtres par leurs noms )
alors il suffit de faire une recherche sur le nom de la fenêtre dans le resultat de la commande cmdow (avec l'option /T si ton script apparait dans la bar de tâches )
pour la recherche il suffit de rediriger le résultat de la commande cmdow vers la commande findstr par l'operateur |
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager