[R] Problème sur la détection du service Server

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
jl56
Niveau 7
Niveau 7
Messages : 415
Enregistré le : mer. 24 oct. 2007 22:42
Localisation : 56000
Status : Hors ligne

[R] Problème sur la détection du service Server

#1

Message par jl56 »

Bonjour à tous

Voila J'ai un client qui à chopé le virus downadup
ce virus arrête quelque service sur le serveur windows 2003 et
notamment les services ( SERVEUR et EXPLORATEUR D'ORDINATEUR)
ci bien que les postes ne voient plus le réseau
après quelques tests sur le serveur celui n'est pas infecté mais je pense que c'est un des postes
qui envoie l'ordre d'arrêt des services ( confirmé par l'antivirus ) .

Aprés une installation d'un path microsoft le problème semble ne pas ce reproduire , ou alors le poste qui pose problème est éteint.

Donc j'ai pensé a utiliser Autoit pour détecter l'arrêt du service afin de les redémarrer aussitôt et me prévenir par l'envoie d'un email que le problème réapparait .

Mais voila je n'arrive pas à détecter ces services !!!
et la je planche j'ai testé plusieurs syntaxes ( anglais , francais ) un autre udf services.au3
j'arrive a contrôler certain service mais pas celui la

Code : Tout sélectionner

#include <ServiceControl.au3>

;exemple avec le spooler cela fonctionne
If _ServiceExists("", "Spooler") Then
                       MsgBox(4096,'debug:' , "Spooler service exists")   
                    If _ServiceRunning("", "Spooler") Then
                          MsgBox(4096,'debug:' , "Spooler service running")
                         If _StopService("", "Spooler") Then
                            MsgBox(4096,'debug:' ,'stop')
                            
                        EndIf
                    else
                        _StartService("", "Spooler") 
                    EndIf
            Else
                       MsgBox(4096,'debug:' , 'Spooler service does not exist')   
EndIf

;et la avec le server cela ne fonctionne pas
If _ServiceExists("", "Server") Then
                       MsgBox(4096,'debug:' , "Server service exists") 
                    If _ServiceRunning("", "Serveur") Then
                          MsgBox(4096,'debug:' , "Server service running") 
                         If _StopService("", "Server") Then
                            MsgBox(4096,'debug:' ,'stop')
                            _StartService("", "Server") 
                        EndIf
                    else
                        _StartService("", "Server") 
                    EndIf
            Else
                       MsgBox(4096,'debug:' , 'Server service does not exist')
EndIf
 
dans une fenêtre DOS net start serveur ( ou server ) fonctionne
j'ai tenté de récupérer l'info par le DOS mais cela ne fonctionne pas n'ont plus

Code : Tout sélectionner

$foo = Run(@ComSpec & " /c net start server,"",@SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
msgbox(0,"Résultat net start server",$foo)
 
Avez S.V.P. des suggestions

Merci

A+ JL56
Avatar du membre
Yogui
Niveau 9
Niveau 9
Messages : 689
Enregistré le : ven. 18 avr. 2008 17:29
Status : Hors ligne

Re: [..] Problème sur la détection du service Server

#2

Message par Yogui »

dans la gestion des service tu peux lancer un script en cas de défaillance de celui ci.

tu peux faire un script ne fais que de relancer le dit service et d'envoyer un mail indiquant la date et l'heure de la panne.

Ce principe évite de faire tourner un script 24/24 sur un serveur. j'en ai un qui tourne pour un service qui tombe régulièrement c'est bien pratique.
Répondre