2008-10-28 6 views
5

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

Хотя мой текущий объем включает в себя приложение Winform и обслуживание окон, я заинтересован в понимании это в общем виде, если это возможно

ответ

7

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

4

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

2

Обрабатывать событие SessionEnded в типе Microsoft.Win32.SystemEvents.