Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

OnCloseQuery и перезагрузка машины... [D6, Win2k]


Martin ©   (2002-09-12 17:01:00) 

Пишется некий сервис (служба), содержащий форму для отображения текущего состояния. Эту форму закрывать нельзя, следовательно в событии OnCloseQuery только сворачиваем форму и CanClose:=False.

При этом проявилось весьма интересная ситуация: При остановке сервиса все происходит нормально, а при перезагрузке компьютера или LogOf пользователя ничего не происходит. Таким вот образом получилась заглушка на LogOf и рестарт копьютера.

Может кто подскажет, как это можно обойти???
(Напоминаю, что при обычной остановке сервиса он стопорится нормально.)

Вот такая байда (((((


Martin   (2002-09-12 17:47:00) [1]

Ученикспасибо. Помогло!


Ученик   (2002-09-12 17:19:00) [2]

private
{ Private declarations }
FCanClose : Boolean;
public
{ Public declarations }
procedure WMQueryEndSession(var Message : TMessage); message WM_QueryEndSession;
end;

procedure TForm1.WMQueryEndSession(var Message : TMessage);
begin
FCanClose := True;
inherited
end;

procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose := FCanClose
end;


Демонов Е.В.   (2002-09-12 17:10:00) [3]

Посмотри сообщения WM_CloseQuery и WM_Close


Наверх

Титульная страница Поиск, карта сайта Написать письмо