![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемы с выключением Windows
Blacki © (2002-05-19 23:51:00)Помогите, очень надо.
Написал довольно большую программу, и теперь когда при запущеной программе пробуй выключить(или перезагрузить, или сделать log off)Windows, то моя прога не вырубается и винда не хочет вырубаться. Такие траблы во всех виндах. Пробовал код уризать в поисках причины, чего то не очень помогает.
Из-за чего вообще такое может быть?
P.S. подскажите хоть как искуственно можно избавиться от этого.
Blacki (2002-05-20 15:43:00) [1]Ну вот ещё такие мысли:
ведь если просто не выключать программу при выключении Windows, то вылазеет окошко и говорит либо жди 15 сек либо щас я вырублю твою прогу. Так ведь щас ничего подобного не выходит, просто винда не выключается и всё.
WM_QueryEndSession я попробовал обработать, при его приходе делаю application.terminate или close. Результат один: теперь прога вырубается, но после этого винда не вырубается. Т.е. приходится нажимать второй раз выключение.
P.S. может как то определять что винда собирается делать(выключиться, перезагрухиться и т.д.)и делать это самому? - но это конечно не нормальный способ, но всё таки может так подскажите?
Victor_Kozel (2002-05-20 10:14:00) [2]Возможно у тебя остаются не обработанными какие то месаги.
Возможно в каком-нибудь компоненте. Посмотри код на наличие
Application.ProcessMessages
У меня такие глюки были с Интернет компонентами.
Pat (2002-05-20 01:29:00) [3]Ну так отлавливай WM_QueryEndSession и завершай работу программы
Blacki (2002-05-20 00:35:00) [4]Ну я так и понял
так что искустенно можно сделать?
Blacki (2002-05-20 00:35:00) [5]искуственно т.е.
Anatoly Podgoretsky (2002-05-20 00:21:00) [6]Это возможные направления, к тому же возможно не ты сам, а постороннии компоненты
Blacki (2002-05-20 00:20:00) [7]OnCloseQuery и WM_QueryEndSession даже не обрабатываю
Anatoly Podgoretsky (2002-05-19 23:59:00) [8]Где то в OnCloseQuery стоит CanClose := False или идет неверная обработка WM_QueryEndSession