Quando, com tempo ocioso o sistema faz logoff
Gostaria de acresecntar nos meus sistemas a opção de quando o usuário não utilizar o micro por um certo tempo ele efetuar logoff no meu sistema, (não no windows) e ficar na tela de login.
Alguém sabe como o windows faz para pegar este tempo sem utilizar o micro?
Existe como fazer isto no Delphi? Como?
Alguém sabe como o windows faz para pegar este tempo sem utilizar o micro?
Existe como fazer isto no Delphi? Como?
Emir Neto
Curtidas 0
Melhor post
Rodc
10/10/2006
Coloque um TTimer no seu form principal. No evento do Timer coloque o evento que faz o logoff no seu programa.
Declare as duas funções abaixo no private do form principal.
E implemente o código das duas.
No evento OnCreate do Form, coloque o código abaixo.
A propriedade Interval do TTimer indica quanto tempo (em milisegundos) o programa deve ficar sem uso ou sem receber mensagens do windows para que entre em logoff. Vale lembrar este tem sem uso é o tempo do seu programa e não do windows. Ou seja, se o seu programa estiver minimizado e o usuário estiver por exemplo usando o Word, o seu programa não irá receber eventos e consequentemente será feito loggoff.
Boa sorte...
procedure TForm1.Timer1Timer(Sender: TObject); begin // Código do Logoff aqui end;
Declare as duas funções abaixo no private do form principal.
private procedure AppIdle(Sender: TObject; var Done: Boolean); procedure AppMessage(var Msg: TMsg; var Handled: Boolean); public
E implemente o código das duas.
procedure TForm1.AppIdle(Sender: TObject; var Done: Boolean);
begin
Timer1.Enabled := True;
end;
procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
Case Msg.message of
WM_LBUTTONDOWN,WM_RBUTTONDOWN,WM_KEYDOWN :Timer1.Enabled := False;
end;
end;
No evento OnCreate do Form, coloque o código abaixo.
procedure TForm1.FormCreate(Sender: TObject); begin Application.OnMessage := AppMessage; Application.OnIdle := AppIdle; end;
A propriedade Interval do TTimer indica quanto tempo (em milisegundos) o programa deve ficar sem uso ou sem receber mensagens do windows para que entre em logoff. Vale lembrar este tem sem uso é o tempo do seu programa e não do windows. Ou seja, se o seu programa estiver minimizado e o usuário estiver por exemplo usando o Word, o seu programa não irá receber eventos e consequentemente será feito loggoff.
Boa sorte...
GOSTEI 1
Mais Respostas
Ramms
09/10/2006
Amigo vc está construindo seu sistema de login do 0?
Tente utilizar esse componente http://www.usercontrol.com.br ele tem essa e mtas outras opções.
[]´s
Tente utilizar esse componente http://www.usercontrol.com.br ele tem essa e mtas outras opções.
[]´s
GOSTEI 0
Emir Neto
09/10/2006
Funcionou perfeitamente. Valeu
GOSTEI 0
Emir Neto
09/10/2006
Funcionou perfeitamente. Valeu
GOSTEI 0