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

Вниз

Отследить выход из Windows   Найти похожие ветки 

 
ShimON ©   (2005-01-26 10:40) [0]

Уважаемые мастера, возникла проблема... Есть прога постоянно висящая в фоне (демон) при выходе из Windows она вечно мешала - не давала выйти пока ее не закроешь, я написал так:

private
   { Private declarations }
   procedure Quit(var M: TWMQueryEndSession); message wm_QUERYENDSESSION;

procedure TfrmSettings.Quit(var M: TWMQueryEndSession);
var
 ConnectThread: TConnectThread;

begin
 //inherited;
 if chbOffWhenLogOff.Checked then
   if (TrayIcon.Icon = IconEnable) then
     begin
       ConnectThread:= TConnectThread.Create(True);
       ConnectThread.Proverka:= False;
       ConnectThread.FreeOnTerminate:= True;
       ConnectThread.Resume;
     end;
 Application.Terminate;
 M.Result := 1;
end;


Так вот все впринципе заработало, но почемуто теперь приложение закрывается раньше чем выполнится процедура потока. Почему???


 
ShimON ©   (2005-01-26 11:03) [1]

Неужель никто не знает... :(


 
BiN ©   (2005-01-26 11:20) [2]

см. WaitFor-функции


 
ShimON ©   (2005-01-26 11:36) [3]

Все решилось намного проще. Дело было в потоке, он запускался и не успевал, естественно выполняться до строчки Application.Terminate. Поэтому я просто поставил туда процедуру выключения и все заработало как надо. Спасибо



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

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

Наверх




Память: 0.47 MB
Время: 0.054 c
1-1106093451
En0.t
2005-01-19 03:10
2005.02.06
Функции преобразования.


1-1106639816
lipskiy
2005-01-25 10:56
2005.02.06
Почему Halt вызывает FormDestroy и как завершиться сразу?


1-1106718408
Atomic
2005-01-26 08:46
2005.02.06
Кнопки


4-1103268331
Progh
2004-12-17 10:25
2005.02.06
Копирование папки


14-1105711357
klyg
2005-01-14 17:02
2005.02.06
Выбор темы для дипломного проекта