Главная страница
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.71 c
1-1106493261
mariya_mezenceva
2005-01-23 18:14
2005.02.06
код разделителя разрядов


14-1105969105
Aleksandr
2005-01-17 16:38
2005.02.06
Помнится был сайт...


1-1106518099
Sphinxx
2005-01-24 01:08
2005.02.06
Ошибка при вызове функции из DLL


1-1106386713
Sicilla
2005-01-22 12:38
2005.02.06
Кодирование темы в письме e-mail


14-1105818338
DeadMeat
2005-01-15 22:45
2005.02.06
Неубиваемые процессы