Tester l'etat d'un service avec wmi

Contenu du snippet

Cette function permet de retourner l'etat d'un service Windows en fonction de trois paramètres :
1) le nom du serveur
2) le nom du service
3) l'état attendu pour le service

Il retourne 1 si le test correspond à l'état attendu, sinon il retourne l'état actuel.

Nécéssite une référence à "Microsoft WMI Scripting library"

Source / Exemple :


Public Function CheckServices(ComputerToConnect As String, ServiceChecked As String, StateRequired As String) As Variant
    On Error GoTo GestErr
    Dim Service
    
    For Each Service In GetObject("winmgmts:{impersonationLevel=impersonate}!//" & ComputerToConnect).InstancesOf("win32_service")
        If Service.Description = ServiceChecked Then
            If Service.State <> StateRequired Then
                CheckServices = ComputerToConnect & "\" & Service.Description & "->" & Service.State
            Else
                CheckServices = 1
            End If
        End If
    Next

GestErr:
    If Err.Number <> 0 Then
        CheckServices = "Connection to :" & ComputerToConnect & "->" & Err.Number & ":" & Err.Description
    End If
  

End Function

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.