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

Вниз

Не выгружается приложение под XP   Найти похожие ветки 

 
m52   (2005-01-28 11:13) [0]

Здравствуйте!
-------------
Когда моё приложение запущено и пытаемся
завершить работу Windows, то сделать этого не удается.
Т.к. мое приложение имеет коннект с mdb-базой, то я
решил корректно обработать FormCloseQuery, где написал:

   try // Здесь корректно отключаемся от БД
     if cn.Connected then cn.Connected:=false;
     CanClose := true;
   finally
     Application.Terminate; // терминейтим приложение
   end;

Приложение стало выгружаться из памяти при завершении Windows, но Windows по-прежнему не завершает работу. Чтобы Windows завершило работу, нужно еще раз сделать завершение работы Windows.

Вопрос: как сделать, чтобы при завершении работы Windows, моё приложение завершалось, после чего происходила перезагрузка Windows? Под win2000 все работает нормально.


 
Kerk ©   (2005-01-28 11:26) [1]

если мне не изменяет склероз.. надо ловить сообщение WM_QUERYENDSESSION


 
xShadow ©   (2005-01-28 11:28) [2]

попробуй обработать сообщение о завершении работы Windows
 private
   { Private declarations }
   procedure WMQueryEndSession( var Message: TWMQueryEndSession); message WM_QUERYENDSESSION;
...
procedure TForm1.WMQueryEndSession(var Message: TWMQueryEndSession);
begin
  inherited;
  Message.Result := 1;
  ...
 
end;



 
m52   (2005-01-28 11:40) [3]

А что такое три точки после Message.Result := 1; ?
Вместо точек надо что-то еще вписать?

И что означает Message.Result:=1 ?


 
Kerk ©   (2005-01-28 11:41) [4]

m52   (28.01.05 11:40) [3]
Вместо точек надо что-то еще вписать?


конечно.. процедура будет вызываться при завершении винды.. закрывай там соединение и все такое


 
m52   (2005-01-28 11:49) [5]

Большое спасибо. Позже попробую.


 
m52   (2005-01-28 11:50) [6]

Скажите, а терминейтить приложение в этом обработчике надо или нет?


 
dimaxx ©   (2005-01-28 12:54) [7]

Нафига? Проге и так послали запрос на закрытие. Указывая CanClose:=true мы подтверждаем, что нас мона закрыть.



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

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

Наверх




Память: 0.48 MB
Время: 0.095 c
8-1098860000
Phantomouse
2004-10-27 10:53
2005.02.13
Обраотка картинки


14-1106732490
Andryk
2005-01-26 12:41
2005.02.13
Вопрос а ни кто не помнит такую старую добрую игру


9-1100177382
NightFire
2004-11-11 15:49
2005.02.13
Откликнитесь хоть на этот раз


1-1107163743
denis24
2005-01-31 12:29
2005.02.13
Проверка поля стрингрида


1-1107238854
Jay1982
2005-02-01 09:20
2005.02.13
Run in Remote Desktop