![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как закрыто приложение [D7, WinXP]
димка © (2004-02-07 22:07:00)Как определить, как закрыто приложение: при помощи Х, alt+f4, из диспетчера задач, или програмно?
}{enon (2004-02-11 15:54:00) [1]Если закрыто при выключении/перезагрузке, то посылается WM_ENDSESSION и WM_QUERYENDSESSION.
}{enon (2004-02-08 17:14:00) [2]В VB процедура QueryUnload (аналог OnCloseQuery) описывается так:
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
UnloadMode как раз и передает, как закрывается окно (упс, в вопросе сказано "приложение", но думаю для большинства программ это все равно, иначе их не закрыть через Alt+F4), например 2 - это перезагрузка / выключение Windows.
Я попробую разобраться как это все работает, но гарантий не даю...
Игорь Шевченко (2004-02-08 13:17:00) [3]}{enon © (08.02.04 08:46)
Аргументы в студию
}{enon (2004-02-08 08:46:00) [4]2 Игорь Шевченко
Странно, в VisualBasic'e это как-то проверяется. Там можно распознать выключение:
1) из собственного кода программы
2) юзером через Alt+F4
3) юзером через диспетчер задач (вроде бы - точно не помню, отказался от VB несколько лет назад)
4) reboot / выключение системы
К сожалению у меня сейчас нет VB и я не могу сказать как это там делается.
Игорь Шевченко (2004-02-07 22:16:00) [5]При помощи Alt+F4 поступает сообщение WM_SYSCOMMAND с параметром SC_CLOSE. Остальное нельзя определить.