HI!
Kennt ihr eine Methode, wie man feststellen kann, ob ein Dienst (in meinem Fall der Windows-Nachrichten-Dienst) gestartet oder gestoppt ist.
Danke
Gruß
Hans
HI!
Kennt ihr eine Methode, wie man feststellen kann, ob ein Dienst (in meinem Fall der Windows-Nachrichten-Dienst) gestartet oder gestoppt ist.
Danke
Gruß
Hans
Hi,
Systemsteuerung --> Verwaltung --> Dienste
zumindest bei WinXP.
Hoffe, ich konnte dir helfen.
MfG
pint
Hallo Hans,
probiere mal folgendes
Der Name des Dienstes sollte eigentlich Messenger sein. Bin mir da aber net 100% sicher :-s
Option Explicit
Dim oService As Object
Private Sub DienstePrüfen (Dienstname as String)
On Error Resume Next
Set oService = GetObject(„WinNT://“ & _
Environ(„computername“) & „/“ +Dienstname+",service")
If Err.Number = 0 Then
With oService
Select Case Index
Case 0
If .Status = 4 Then 'Ist gestartet
’ .Stop --> Hiermit kannst du den Dienst anhalten
End If
Case 1
If .Status = 1 Then 'Ist angehalten
'.Start --> Hiermit kannst du den Dienst starten
End If
End Select
End With
Else
MsgBox "Fehler: " & Err.Number & vbCrLf & _
Err.Description, vbCritical, „Fehler“
End If
End Sub
Mit dieser Sub kannst du den StartModus des Dienstes gleich einstellen
Achte aber dabei das du die Berchtigung dazu hast :s
Private Sub StartModusDiensteSetzen(Dienst As String)
On Error Resume Next
Set oService = GetObject(„WinNT://“ & _
Environ(„computername“) & „/“+Dienst+",service")
If Err.Number = 0 Then
With oService
Select Case Index
Case 0
.Put „StartType“, 2
.SetInfo
MsgBox „StartType=2 (automatic) für „+Dienst+“ gesetzt“
Case 1
.Put „StartType“, 4
.SetInfo
MsgBox „StartType=4 (deaktiviert) für „+Dienst+“ gesetzt“
End Select
End With
Else
MsgBox "Fehler: " & Err.Number & vbCrLf & _
Err.Description, vbCritical, „Fehler“
End If
End Sub
Ich hoffe es hilft dir ein wenig weiter
VLG Alex
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Danke
HI!
Vielen Dank für den Tipp. Hat alles geklappt.
Gruß Hans