using Microsoft.Win32;
public class App
{
static void Main()
{
SystemEvents.SessionSwitch += SystemEvents_SessionSwitch;
Console.ReadLine();
SystemEvents.SessionSwitch -= SystemEvents_SessionSwitch;
}
static void SystemEvents_SessionSwitch(object sender, SessionSwitchEventArgs e)
{
if(e.Reason == SessionSwitchReason.SessionLock)
{
Console.WriteLine("locked at {0}", DateTime.Now);
}
if(e.Reason == SessionSwitchReason.SessionUnlock)
{
Console.WriteLine("unlocked at {0}", DateTime.Now);
}
}
He creado un servicio de Windows. Cuando reinicio el sistema e inicio de sesión, cierre la sesión, bloquee o desbloquee la sesión. no capturará el evento. El servicio se está ejecutando, pero no funcionará correctamente.¿Cómo capturar de manera confiable los inicios de sesión de Windows, cerrar sesión, bloquear y desbloquear eventos de un servicio?
Cuando reinicio el servicio, capturará todos los eventos como se esperaba. ¿Cómo hago para solucionar problemas/corregir esto?
Y qué intenta decirnos con eso ... Especifique "no va a funcionar" un poco más detallado ... ¿cómo no funciona? ¿Qué hace? ¿Qué debería hacer? –
¿A qué versión (s) de Windows está tratando específicamente de apuntar? Los eventos se comportaron de manera diferente entre 2000, XP y Vista –