Hola Casimiro,
Gracias por la ayuda.
Pues he realizado la prueba en Windows 98, 2000 y XP, aunque realmente desarrollo en XP...
Esa opción que me has dado es la que estaba intentando efectuar. El problema que me encuentro ahora es que no es capaz de reconocerme ese mensaje y por tanto no pasa por el tratamiento del WM_QUERYENDSESSION, en cambio sí pasa por el WM_ENDSESSION.
Tengo la declaración en el private del formulario así:
procedure WMQueryEndSession (var Msg : TWMQueryEndSession); message WM_QueryEndSession;
y la implementación
procedure TFormMainImpre.WMQueryEndSession (var Msg : TWMQueryEndSession);
begin
Msg.Result := 1;
showmessage('ENTRO QUERY');
Close;
Halt;
end;
Pero nada. No aparece el mensaje. Seguiré intentando.
Muchas gracias de nuevo.
|