![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TSocketConnection не завершается работа Windows [D5]
MikeP © (2002-07-08 18:29:00)hi, masters!
Есть прога, использующая TSocketConnection. Она вполне корректно завершается при закрытии главной формы, но не хочет предсказуемо реагировать на завершение работы Windows. Если не обрабатывать WM_QUERYENDSESSION то она не закрывается вообще. При явном закрытии SocketConnection в WM_QUERYENDSESSION (и возврате TRUE)на некоторых компах проблема решается, но на остальных появляется такой эффект: прога закрывается, но при этом процесс Restart/Shutdown останавливается. Так всегда происходит под Win2K, остальные компы (win98) ведут себя случайно. Заранее спасибо за помощь!
Digitman (2002-07-09 08:47:00) [1]проверь в обработчике этого события (после DM.SC.Close), нет ли в завершаемом процессе инезавершенных доп.потоков
MikeP (2002-07-08 19:32:00) [2]procedure TMainForm.MyQES(var Msg: TMessage);
begin
Msg.Result:=1;
DM.SC.Close;
end;
пробовал еще WM_ENDSESSION плюс к этому обрабатывать, там просто MainForm закрывал. DM создается в MainForm.OnCreate, TDataModule.Create(Self), там же инициализируются хост, порт и открывается SC.
Digitman (2002-07-08 18:48:00) [3]А как ты обрабатываешь WM_QUERYENDSESSION ?
И вообще - каким образом (фрагмент клиентского кода) закрывается сессия связи TSocketConnection c BSS ?