Yo tengo una inquietud mas que pregunta, que gano yo al usar OnCloseQuery en lugar desolo OnClose.
Con el evento OnClose hago esto
Código Delphi
[-]
if MessageDlg('¿ Realmente desea salir de Sistema ?', mtInformation,
mbYesNOCancel, 0) = mrYes then begin
if validaPass then begin
ShowMessage('Se ha solicitado salir de este proceso, '+
'es posible que pierda información y no será posible recuperarla');
SioDTR(Port,'C');
SioRTS(Port,'C');
SioDone(Port);
SioDone(Port1);
Action := caFree;
end
else begin
ShowMessage('Password invalido, intente de nuevo');
Action := caNone;
end;
end
else Action := caNone;
end;
y con el evento OnCloseQuery podría hacer esto
Código Delphi
[-]
if MessageDlg('¿ Realmente desea salir de Sistema ?', mtInformation,
mbYesNOCancel, 0) = mrYes then begin
if validaPass then begin
ShowMessage('Se ha solicitado salir de este proceso, '+
'es posible que pierda información y no será posible recuperarla');
SioDTR(Port,'C');
SioRTS(Port,'C');
SioDone(Port);
SioDone(Port1);
CanClose := True;
end
else begin
ShowMessage('Password invalido, intente de nuevo');
CanClose := False;
end;
end
else CanClose := False;
end;
Pero mi inquietud es ¿que es mejor?
Usar el evento OnCloseQuery ó el evento OnClose.
Salud OS.