Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.01.06;
Скачать: CL | DM;

Вниз

выход из windows закрывает мое приложение   Найти похожие ветки 

 
sia ©   (2007-12-07 15:25) [0]

как мне отловить событие закрытия моей программы, вызванное выходом из windows?
поясню: пользователь не закрыл приложение перед тем, как выключить комп. и некоторые данные не сохранились.
заранее спасибо за помощь.


 
tesseract ©   (2007-12-07 15:37) [1]

Ловить WM_QUERYENDSESSION в своей программе.


 
homm ©   (2007-12-07 15:44) [2]

> [0] sia ©   (07.12.07 15:25)
> выход из windows закрывает мое приложение

Какая досада. А выключение питания не выключает твоего приложения? :)


 
Сергей М. ©   (2007-12-07 17:17) [3]


> homm ©   (07.12.07 15:44) [2]


Ты провоцируешь автора на изобретение обработчика события ядерного взрыва)


 
sia ©   (2007-12-07 19:13) [4]

всем большое спасибо за ПОМОЩЬ. Особенно за Ваш неиссякаемый сарказм, который отражает Ваш истинный профессионализм.

с подачи tesseract разобрался :).

при появлении соообщений WM_QUERYENDSESSION или WM_ENDSESSION, посылаемых Windows моему приложению, в соответствующих обработчиках делаю небходимые действия.


 
{RASkov} ©   (2007-12-07 20:32) [5]

> [0] sia ©   (07.12.07 19:13)
> поясню: пользователь не закрыл приложение перед тем, как
> выключить комп. и некоторые данные не сохранились.

Альтернатива "ловли сообщений" - у форм есть событие OnCloseQuery...


 
homm ©   (2007-12-07 21:21) [6]

> [4] sia ©   (07.12.07 19:13)
> при появлении соообщений WM_QUERYENDSESSION или WM_ENDSESSION

Или? Т.е. ты даже не разобрался, чем они отличаются?


 
homm ©   (2007-12-07 21:24) [7]

> [4] sia ©   (07.12.07 19:13)
> Особенно за Ваш неиссякаемый сарказм, который отражает
> Ваш истинный профессионализм.

Если тебе уже дали ответ, зачем что-то еще? Или ты считаешь, что здесь специально обучаные роботы отвечають должны?


 
sia ©   (2007-12-11 13:54) [8]


> Альтернатива "ловли сообщений" - у форм есть событие OnCloseQuery.
> ..

OnCloseQuery срабатывает только когда пользователь закрывает приложение. когда его закрывает операционка оно не возникает.

> Или? Т.е. ты даже не разобрался, чем они отличаются?

Думаю, что разобрался: при закрытии винда сначала посылает всем запущенным прогам WM_QUERYENDSESSION. если хоть одно приложение возвращает 0, то винда не закрывается, а шлет всем, кто ответил <>0, сообщение WM_ENDSESSION, ожидая true. если false, то не закрывается. так во всяком случае в win32.hlp написано.

> Или ты считаешь, что здесь специально обучаные роботы отвечають
> должны?

я считаю, что если не знаешь что ответить или не хочешь отвечать, то не надо вообще писать. твои плоские шутки смешны не всем. а особенно задающему вопрос.



Страницы: 1 вся ветка

Текущий архив: 2008.01.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
2-1197227587
alikon1
2007-12-09 22:13
2008.01.06
Удаление записей в связанных таблицах


2-1197230296
alikon1
2007-12-09 22:58
2008.01.06
Как получить данные из таблицы.


15-1196611257
begin...end
2007-12-02 19:00
2008.01.06
Шоу двойников...


2-1196762147
olgasato
2007-12-04 12:55
2008.01.06
Очередь и Стек (Динамические структуры данных)


2-1197056115
AntiPupkin
2007-12-07 22:35
2008.01.06
Перечислить ID потоков в открытом процессе