Показать сообщение отдельно
  #1  
Старый 26.06.2012, 13:04
cdtj cdtj вне форума
Прохожий
 
Регистрация: 26.06.2012
Сообщения: 16
Версия Delphi: Embarcadero 8.0
Репутация: 132
По умолчанию Отлов с закрытием окна (WMENDSESSION, и тд)

День добрый, в интернете имеется куча примеров с отловом закрытия окна, но сам я так и не смог разобраться. Вообщем ситуация такая, требуется чтобы программа не давала пользователю закрыть себя путем выключения компьютера (через shutdown.exe естественно). Везде предлагается решение подобного рода:

Код:
procedure TForm2.WMQUERYENDSESSION(var Msg: TMessage);
begin
  msg.Result:=0;
end;

procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  canclose:=false
end;

procedure TForm2.WMENDSESSION(var Msg: TMessage);
begin
 Msg.Result:=0;
 { добавив этиу строку программа перезапускает себя, но это тоже не выход: ShellExecute(Handle,'Open','Project1.exe',nil,nil,1); }
end;

Компьютер не выключается, но программа всё равно закрывается.
Подскажите пожалуйста, как избежать закрытия программы?
Ответить с цитированием