Главная страница
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.061 c
4-1103178046
Dr. Genius
2004-12-16 09:20
2005.02.06
Инфо о модеме


1-1106230840
Алексей
2005-01-20 17:20
2005.02.06
Работа со строками


1-1106500619
ZL
2005-01-23 20:16
2005.02.06
Line


1-1106488173
Dmitry_04
2005-01-23 16:49
2005.02.06
Как мне установить сервис?


1-1106291343
Павел
2005-01-21 10:09
2005.02.06
Как проверить работает ли пользователь под правами админа