Hallo,
ich nutze die Möglichkeit Windows Dienste zu verwalten. Ich möchte gerne bei Inaktivität einen Dienst anhalten und bei Aktivität wieder starten. Manchmal funktioniert es auch. GetIdle ist die Zeit, die keine Aktivität am PC vorhanden ist. Ich
lasse das ganze im Timer laufen.
Das kommt dann auch als Ausnahme:
Ausnahme ausgelöst: "System.InvalidOperationException" in System.ServiceProcess.dll
Was mache ich falsch? Wenn ich alle Bedingungen raus nehme, schaltet der Dienst ab und startet auch wieder, allerdings mit der Ausnahme und ich denke, man sollte doch abfragen können,
was der Status gerade ist.
CodeTags korrigiert ~VaporiZed
ich nutze die Möglichkeit Windows Dienste zu verwalten. Ich möchte gerne bei Inaktivität einen Dienst anhalten und bei Aktivität wieder starten. Manchmal funktioniert es auch. GetIdle ist die Zeit, die keine Aktivität am PC vorhanden ist. Ich
lasse das ganze im Timer laufen.
Das kommt dann auch als Ausnahme:
Ausnahme ausgelöst: "System.InvalidOperationException" in System.ServiceProcess.dll
Was mache ich falsch? Wenn ich alle Bedingungen raus nehme, schaltet der Dienst ab und startet auch wieder, allerdings mit der Ausnahme und ich denke, man sollte doch abfragen können,
was der Status gerade ist.
VB.NET-Quellcode
- Imports System.ServiceProcess
- Public Class frmMain
- Dim Service As New ServiceController(My.Settings.ServiceName)
- Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
- Try
- If GetIdle() = 0 And Not Service.Status = ServiceControllerStatus.Started And Not Service.Status = ServiceControllerStatus.StartPending Then
- Service.Start()
- End If
- If GetIdle() / 1000 > My.Settings.MaxIdleTime And Not Service.Status = ServiceControllerStatus.Stopped And Not Service.Status = ServiceControllerStatus.StopPending Then
- Service.Stop()
- End If
- Catch
- ' noch nichts eingefügt
- End Try
- lblIdleTime.Text = "Zeit inaktivität: " & GetIdle().ToString / 1000 & " Sekunden"
- End Class
CodeTags korrigiert ~VaporiZed
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()