Как определить, что моё приложение хотят завершить

объявляем следующию процедуру как:

procedure WMQueryEndSession( var Message: TWMQueryEndSession); message WM_QUERYENDSESSION;

и определяем её как:

procedure TMainFrm.WMQueryEndSession(var Message: TWMQueryEndSession); 
begin 
  Message.Result:=1; 
  gEndSession := True; 
end;

она будет вызываться, когда Windows пожелает завершиться. Хотя обычно такая процедура вызывается как:

procedure TMainFrm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); 
begin 
CanClose := True; 
  if gQueryEnd and not gEndSession then 
    if MessageDlg('Quitting (your app name).  Are you sure?', 
                  mtInformation, mbOKCancel, 0) = mrCancel then CanClose := False 
end;
 
faq/delphi/system/detect_shutdown_my_app.txt · Последние изменения: 2006/05/14 14:39 (внешнее изменение)
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki