detectar logoff, restart ou shutdown - nao esta funcionando
LazarusBrasil :: Geral :: Programação :: Geral
Página 1 de 1
detectar logoff, restart ou shutdown - nao esta funcionando
fiz o programa abaixo, mas ele nao detecta logoff, restart ou shutdown; o que fiz de errado ? - estou fazendo este programa no Lazarus versao 0.9.30.2. Desde já agradeço qualquer ajuda. Obrigado
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Windows, Messages,
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs;
type
{ TForm1 }
TForm1 = class(TForm)
private
{ private declarations }
procedure WMQueryEndSession( var Msg:TWMQueryEndSession ); message WM_QueryEndSession;
procedure WMEndSession( var Msg:TWMEndSession ); message WM_ENDSESSION;
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
procedure TForm1.WMQueryEndSession( var Msg:TWMQueryEndSession );
begin
if MessageDlg( 'Fechar o Windows ?', mtConfirmation, [mbYes,mbNo], 0 ) = mrNo then
begin
Msg.Result := 0;
end
else
begin
Msg.Result := 1 ;
end;
inherited;
end;
procedure TForm1.WMEndSession( var Msg:TWMEndSession );
begin
if Msg.EndSession = TRUE then
begin
ShowMessage( 'Windows fechando ' + #10#13 + 'at ' + FormatDateTime( 'c', Now) );
end;
inherited;
end;
end.
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Windows, Messages,
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs;
type
{ TForm1 }
TForm1 = class(TForm)
private
{ private declarations }
procedure WMQueryEndSession( var Msg:TWMQueryEndSession ); message WM_QueryEndSession;
procedure WMEndSession( var Msg:TWMEndSession ); message WM_ENDSESSION;
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
procedure TForm1.WMQueryEndSession( var Msg:TWMQueryEndSession );
begin
if MessageDlg( 'Fechar o Windows ?', mtConfirmation, [mbYes,mbNo], 0 ) = mrNo then
begin
Msg.Result := 0;
end
else
begin
Msg.Result := 1 ;
end;
inherited;
end;
procedure TForm1.WMEndSession( var Msg:TWMEndSession );
begin
if Msg.EndSession = TRUE then
begin
ShowMessage( 'Windows fechando ' + #10#13 + 'at ' + FormatDateTime( 'c', Now) );
end;
inherited;
end;
end.
RenatoBigio- Mensagens : 1
Data de inscrição : 20/11/2011
LazarusBrasil :: Geral :: Programação :: Geral
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|