Buen dia a todos !!
Tengo un servicio windows cuya propiedad "starttype = automatic ". Este servicio verifica cada 5 segundos que una aplicación windows "X" este ejecutandose, de otro modo, inicia su ejecución.
Tengo dos problemas con el:
1.- Despúes de haber instalado el servicio, hace la verificación y arranca la aplicación. Esto lo hace normalmente (solo se genera una instancia de "X"), pero si reinicio la PC, se generan 4 instancias de "X" !!
2.- Justo en el momento del shutdown de la PC, me sale un mensaje de error diciendo que la aplicación X no pudo continuar realizando sus funciones. Me gustaria saber si existe alguna forma de detectar el evento de shutdown de windows para decirle al servicio que cierre la aplicacion X
El codigo que tengo en el servicio es este:
Protected Overrides Sub OnStart(ByVal args() As String)
'Start Timer in order to check if the Nwlt32 process (network limiter windows application) is running
tmrCheck.Enabled = True
tmrCheck.Start()
End Sub
Private Sub tmrCheck_Elapsed(ByVal sender As System.Object, ByVal e As System.Timers.ElapsedEventArgs) Handles tmrCheck.Elapsed
CheckExistence()
End Sub
Private Sub CheckExistence()
'Check if there is at least Nwlt32 instance running
IsLimiterAlive = Process.GetProcessesByName("NwLt32").Length
'If there is not any instance running, run one
If IsLimiterAlive = 0 Then
LoadNetworkLimiter()
End If
End Sub
donde LoadNetworkLimiter() es un procedimiento que inicia la ejecución de la aplicacion X
Alguien tiene idea de como puedo solucionar esto?
Gracias !!