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

Вниз

rxTray не дает Windows завершить работу   Найти похожие ветки 

 
ppcat   (2002-11-06 10:20) [0]

И раньше с этим сталкивался, без rxTray. Помещаем иконку в tray с помощью Windows API и не можем завершить работу, пока не выгрузим это приложение. Но в The Bat эта проблема решена. Мастера знают КАК?

Очень надеюсь.


 
Song ©   (2002-11-06 10:24) [1]

WM_QUERYENDSESSION/ENDSESSION


 
ppcat   (2002-11-06 11:00) [2]

Это я уже смотрел и понял, что при получении WM_QUERYENDSESSION приложение отвечает нулем и на этом Windows опрос прекращает. Соответственно до WM_ENDSESSION дело не доходит. Пробовал в обработчике WM_QUERYENDSESSION сделать message.result:= 1; - не помогает. Что же здесь можно сделать?


 
Song ©   (2002-11-06 11:03) [3]

Если действия, выполняемые по завершению работы, небольшие, можно ограничиться сообщением WM_ENDSESSION


 
ppcat   (2002-11-06 11:13) [4]

Действия-то небольшие - вынуть иконку из трея. Но я это пытался делать в обработчиках WM_ENDSESSION и WM_QUERYENDSESSION и приложение пытался там завершить (и Close и Application.Terminate). Все, чего добился - приложение закрывается, но Windows не вырубается, только со 2-го раза, когда приложения уже нет. В хелпе и MSDN пишут, что приложение вырубать в этих обработчиках не нужно, и так пробовал - шиш.


 
Song ©   (2002-11-06 11:48) [5]

protected
Procedure IsWindowsShutDown(Var Msg:TMessage); WM_ENDSESSION;
...

Procedure TForm1.IsWindowsShutDown(Var Msg:TMessage);
Begin
inherited;
IF Msg.WParam=1 then
Begin
//Убираем иконку из трея
MainForm.Close; // выгружаем приложение
End;
End;

У меня так работает и в W9x и в NT4.0 и в Win XP. w2k - не пробовал, нету её просто.



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

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

Наверх




Память: 0.47 MB
Время: 0.042 c
1-15127
Programist21
2002-12-22 13:30
2003.01.06
Текст или HTML-код из IE


14-15219
Anatoly Podgoretsky
2002-12-19 07:50
2003.01.06
Именинники 19 декабря


8-15164
Aleksey Rykov
2002-09-13 01:48
2003.01.06
DirectDraw в оконном режиме


1-15069
Tundra
2002-12-25 07:28
2003.01.06
Не весь Хелп установлен в моем делпфи


4-15355
sdram
2002-11-18 17:46
2003.01.06
Как узнать текущую OS?