Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];

Вниз

Не выгружается приложение под 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.047 c
4-1104096081
Davinchi
2004-12-27 00:21
2005.02.13
Тональный набор в голосовом режиме модема


1-1107021755
Mixi
2005-01-29 21:02
2005.02.13
RasReader


14-1106317972
Aleksandr
2005-01-21 17:32
2005.02.13
Сетевой принтер (что да как)


1-1107266317
JohnKorsh
2005-02-01 16:58
2005.02.13
Программная очистка "корзины".


4-1103888825
tradakad
2004-12-24 14:47
2005.02.13
Событие клик по элементы системного меню





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский