Code: |
unit Unit1; interface uses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) procedure FormClose(Sender: TObject; var Action: TCloseAction); private {--------------------------------------------------------} { Объявляем свой обработчик сообщения WM_QUERYENDSESSION } {--------------------------------------------------------} procedure WMQueryEndSession( var Message: TWMQueryEndSession); message WM_QUERYENDSESSION; public { Public declarations } end; var Form1: TForm1;
implementation {$R *.DFM}
{--------------------------------------------------------------} { Создаем процедуру обработки сообщения WM_QUERYENDSESSION. } { Приложение получит только это сообщение при попытке Windows } { завершить работу } {--------------------------------------------------------------}
procedure TForm1.WMQueryEndSession(var Message: TWMQueryEndSession); begin inherited; { сначала сообщание должен обработать наследуемый метод } {--------------------------------------------------------------------} { в этой точке вы также можете сообщить Windows о неготовности } { приложения завершить работу... } { Message.Result:=0; } {-------------------------------------------или----------------------} { вызов процедуры освобождения ресурсов, предусмотренной в FormClose } { MyCleanUpProcedure; } {--------------------------------------------------------------------} end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin MyCleanUpProcedure; end;
end.
|
- << Назад
- Вперёд
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!