Sprache: VB
Gibt einen boolschen Wert zurück der angibt ob der angegebene Dienst gestartet ist.
'Verweis auf System.ServiceProcess hinzufügen !
Imports system.ServiceProcess
Public Function ServiceAvailable(ByVal Dienst As String) As Boolean
Dim Service As ServiceController = New ServiceController(Dienst)
Return CBool(Service.Status = ServiceProcess.ServiceControllerStatus.Running)
Service.Close()
End Function
'Verweis auf System.ServiceProcess hinzufügen !
Imports system.ServiceProcess
Public Function ServiceAvailable(ByVal Dienst As String) As Boolean
Dim Service As ServiceController = New ServiceController(Dienst)
Return CBool(Service.Status = ServiceProcess.ServiceControllerStatus.Running)
Service.Close()
End Function
Alte URL:
/snippet/pruefen-ob-ein-dienst-gestartet-ist/157
Hallo ,
führt denn die Anweisung „Service.Close()“ nicht dazu, dass der Dienst beendet wird?
ciao
Elwood
Nein der Dienst wird dadurch nicht beendet es wird nur die erstellte Zugriffsschnittstelle geschlossen wie man es auch bei der Arbeit mit Dateien kennt
Die Return Anweisung beendet die Funktion und Service.Close() wird nie ausgeführt. Hier macht die Using-Direktive Sinn.
Public Function IsServiceRunning(dienst As String) As Boolean
Using service As ServiceController = New ServiceController(dienst)
If service Is Nothing Then Return False
If service.Status = ServiceControllerStatus.Running Then
Return True
Else
Return False
End If
End Using
End Function