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

Вниз

Отловить завершение винды   Найти похожие ветки 

 
Miker   (2002-10-23 23:57) [0]

У меня безформенное приложение. И поэтому делаю следующее, чтобы она выполнялась:


program MyProg;
uses ....;

-----
Мои действия...
------

repeat
PeekMessage(Msg,0,0,0,pm_noremove);
case Msg.message of
WM_CLOSE:break;
WM_QueryEndSession:break;
WM_QUIT:Close;
end;
// Application.ProcessMessages;
// sleep(50);
until false;

----------
мои действия, которые я хочу выполнить.


Дак вот, при завершении виндовсов, операторы после until false не выполняются, т.е. программа закрывается виндой насильно (если правильно выражаюсь). Нужно это исправить.


 
Song ©   (2002-10-24 09:48) [1]

На WM_QUERYENDSESSION вернуть отрицательный результат. Какой - смотрите в хэлпе по SDK.


 
Miker   (2002-10-25 00:38) [2]

А как его вернуть? Чего-нибудь наподобии Result:=0 у TMsg нет. (прошу прощения за неграмотность).


 
linage   (2002-10-25 00:52) [3]

необходимо написать обработчик сообщения и посадить его на WM_QUERYENDSESSION.

procedure WMExitWindows(var Message: TMessage); message WM_QUERYENDSESSION;

procedure WMExitWindows(var Message: TMessage);
begin
Message.Result:=0;
end;


 
Miker   (2002-10-25 22:47) [4]

To Song:
Я понимаю, что конкретного ответа давать не хочешь (и, вроде, правильно), но для меня твоей информации недостаточно для решения моей проблемы (знаю, что ответ должен быть=0, а как собственно ответить?). Подскажи, пожалуйста, конкретней.



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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
8-14691
kos123
2002-08-14 21:38
2002.12.05
Canvas оптимизация


6-14717
ch
2002-10-08 11:23
2002.12.05
Помогите незнающему


1-14538
Jul
2002-11-26 18:21
2002.12.05
(v & 0xC0) >> 6)


14-14769
VID
2002-11-13 18:35
2002.12.05
РЕФЕРАТ - 1


1-14569
Воропай Андрей
2002-11-25 17:48
2002.12.05
Как победить большой шрифт?