|
Jak zapobiec zamknięciu Windows? |
|
|
|
Napisał: Berl
|
|
sobota, 01 październik 2005 |
|
Aby zapobiec zamknięciu Windows, musimy wykorzystać komunikat WM_QUERYENDSESSION, który jest wysyłany do wszystkich aplikacji, gdy Windows jest zamykany. Jeżeli po wysłaniu takiego komunikatu jakaś aplikacji zwróci wynik 0, to Windows nie jest zamykany. Przykładowy unit, wykorzystujący WM_QUERYENDSESSION :
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;
type
TForm1 = class(TForm)
private
procedure WMQueryEndSession (var Msg : TWMQueryEndSession); message WM_QueryEndSession;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.WMQueryEndSession (var Msg : TWMQueryEndSession);
begin
if MessageDlg('Zezwolić na zamknięcie Windows?', mtConfirmation, [mbYes,mbNo], 0) = mrNo then
Msg.Result := 0
else
Msg.Result := 1;
end;
end.Aby dodać komentarz zaloguj się. Jeśli nie masz konta, załóż je sobie. Tylko zarejestrowani użytkownicy mogą pisać komentarze. |