Подписка на системные события в C# с P/Invoke в Mono
У меня есть приложение, в котором мне нужно реагировать на такие события, как изменение пользователем системного времени (например, событие Microsoft.Win32.SystemEvents.TimeChanged), изменение настроек отображения (SystemEvents.DisplaySettingsChanging и SystemEvents.DisplaySettingsChanged) и возобновление из режима сна или гибернации (SystemEvents.PowerModeChanged. Проблема в том, что в моем приложении класс SystemEvents недоступен. Итак, мне было интересно, существует ли способ P/Invoke / WinAPI для выполнения той же вещи (что я конечно есть).