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);
}
}
Я создал службу Windows. Когда я перезагружаю систему и захожу, выхожу из системы, блокирую или разблокирую сеанс. это не будет захватывать событие. Служба работает, но она не будет работать должным образом.
Когда я перезапускаю сервис, он будет захватывать все события, как ожидалось. Как мне устранить неполадки / исправить это?