Установление выключения закрывает мое приложение

Можно ли в.NET определить, закрывается ли мое приложение из-за того, что Windows выдает команду на отключение (в отличие от закрытия любого старого приложения), чтобы либо выписать некоторые файлы временного кэша, либо даже заблокировать отключение достаточно долго, чтобы запросить пользовательский ввод?

В то время как моя текущая сфера деятельности включает в себя приложение Winform и службу Windows, я заинтересован в понимании этого, если это возможно, общим способом.

3 ответа

Решение

SystemEvents.SessionEnding выглядит хорошей отправной точкой для вас. В этой статье рассказывается о последовательности событий, связанных с выходом из системы / выходом из системы.

В общем, вы захотите справиться с WM_QUERYENDSESSION Сообщение Windows. Это даст вашему приложению возможность выполнить очистку или заблокировать завершение работы, если это действительно необходимо.

Обработайте событие SessionEnded для типа Microsoft.Win32.SystemEvents.

Другие вопросы по тегам