URGENT : LANCER UN PROCESSUS WINDOWS QUI S'EST ARRETE [Résolu]

Signaler
Messages postés
2
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
2 mai 2005
-
Messages postés
19
Date d'inscription
jeudi 2 juin 2005
Statut
Membre
Dernière intervention
6 septembre 2005
-
Bonjour à tous !!
Je suis encore débutante en vb mais y'a un début à tout hein !!

Alors voilà. Je voudrai trouver quelque chose qui me relance un processus lorsqu'il s'arrête. J'ai trouvé un script de michelc qui envoi tout les process en cours dans un fichier log et qui se met à jour automatiquement pour voir si un process s'est arrêté. D'ailleurs ce script marche très bien, bravo !!
Seulement il me faudrai une suite : lorsque ce script s'execute, il met à jour la liste en vérifiant si le process s'est arrêté, et je voudrai kil aille plus loin en faisant kelke choz du style :
"Tel process s'est arrêté, le redémarrer", "tel process s'est aussi arrêté, le redémarrer"....

HEPL ME !! En plus c'est mon responsable qui me demande ca. Aidez moi, une bonne appréciation pour l'obtention de mon diplome est en jeu!!

3 réponses

Messages postés
81
Date d'inscription
jeudi 29 juillet 2004
Statut
Membre
Dernière intervention
22 juillet 2007

salut,

Tu etabli la liste des process qui doivent tjs tourner dans un tableau avec en plus le chemin + nom de l'exe associé dans ton tableau (2 dimensions koi).

Tu stockes la liste des process actifs dans un tableau (+ rapide pour croiser les données).

Pour chaque element de ton tableau des process qui devraient tourner tu recherches ce process dans la liste des process actifs. Si un process obligatoire n'est pas trouvé, tu le relances avec un shell <chemin+nom de l'exe>

Exemple ca sera + clair ... j'esperes :-) :

dim strTabProcessOblig(10,1) ' si + de 10 process obligatoires tu adaptes
dim bTrouve as boolean

bTrouve = false

Tableau des process obligatoires :
strTabProcessOblig(0,0)="Notepad"
strTabProcessOblig(0,1)="Notepad.exe"

strTabProcessOblig(1,0)="Microsoft Excel"
strTabProcessOblig(1,1)="c:\program files\ ........\Excel.exe"

strTabProcessOblig(2,0)="Toto"
strTabProcessOblig(2,1)="c:\toto\toto.exe"

redim strTabProcessOblig(2,1) ' pour cet exemple, tu adaptes a la taille necessaire

Tableau des process actifs recuperés depuis ton fichier texte
- Notepad
- Toto
Mis dans un tableau (ex: strTabProcessActifs()) à 1 dimension

for i=0 to ubound(strTabProcessOblig(),1)
for j=0 to ubound(strTabProcessActifs())
if strTabProcessOblig(i,0) = strTabProcessActifs(j) then
bTrouve = true
exit for
end if
next j
if bTrouve=false then 'pas trouve donc on le relance !
shell strTabProcessOblig(i,1) ' voir le 2e param de shell pour le faire tourner en minimize
endif
bTrouve=false
next i

Un truc dans ce style devrait marcher pour relancer des EXE par contre si c'est des process windows style DLL ou autre, ca marchera pas ... là je ne sais pas faire !

A+

Christophe.

Ps: j'ai pas testé ... c'est fait à la volée comme code ... donc si ca marche pas dis le moi je testerais de mon coté ...

A++
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 179 internautes nous ont dit merci ce mois-ci

Messages postés
2
Date d'inscription
vendredi 29 avril 2005
Statut
Membre
Dernière intervention
2 mai 2005

Ok merci!! je test ca et je te dis koi ! Comme je débute ce sera peut être long :-p
En tout cas merci!!
Messages postés
19
Date d'inscription
jeudi 2 juin 2005
Statut
Membre
Dernière intervention
6 septembre 2005

bonjour,

Peux tu me donner le script de michelc qui envoi tout les process en cours dans un
fichier log et qui se met à jour automatiquement pour voir si un
process s'est arrêté.

merci