Главная страница
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.029 c
14-1105739482
Ломброзо
2005-01-15 00:51
2005.02.06
Экскурс в Java


4-1103554307
Bless
2004-12-20 17:51
2005.02.06
Как работает DefWindowProc?


14-1106051079
Sandman25
2005-01-18 15:24
2005.02.06
Ранги мужчин и политика


14-1105952259
Layner
2005-01-17 11:57
2005.02.06
Кто нибудь пишет DVD?


14-1105405127
Поручик
2005-01-11 03:58
2005.02.06
Как вы думаете