Impedindo o desligamento do Windows
Para detectar e impedir o desligamento do computador, uso um programa muito simples. Possui apenas um formulário e um procedimento privado, como abaixo:
TForm3 = class(TForm)
private
procedure WMQueryEndSession(var Msg : TWMQueryEndSession) ;
message WM_QueryEndSession;
end;
e a implementação
procedure TForm3.WMQueryEndSession(var Msg: TWMQueryEndSession);
begin
Msg.Result := 0; //so I don't want to shutdown while my program is running
end;
Eu o compilei Delphi 5 e Delphi 2010. Ambos detectam o desligamento. Mas quando eu compilei no Delphi 2010; depois de impedir o desligamento, meu programa é fechado. (O PC não desliga)
Como obtenho o mesmo resultado de ambos?