Главная страница
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-1106291256
Fantom
2005-01-21 10:07
2005.02.06
Запуск одной копии программы и обнаружение ее при повторном запус


14-1106122704
Cosinus
2005-01-19 11:18
2005.02.06
Подскажите хорошую утилитку физического тестирования HDD...


6-1100705562
Sicilla
2004-11-17 18:32
2005.02.06
Байты клиенту


3-1104996289
atruhin
2005-01-06 10:24
2005.02.06
Переход от IB 5.6 на FireBird 1.5


1-1106533115
rosl
2005-01-24 05:18
2005.02.06
номер дня недели