GARANTIR DESCONTO

Fórum Como Detectar Inatividade do Computador?? #254559

15/10/2004

0

Olá Pessoal!!

Estou precisando detectar a inatividade do computador após um certo período de tempo, estou utilizando a rotina abaixo, entretanto, ela não funciona no windows 98 (somente 2000), tentei o uso de hooks de teclado/mouse, entretanto qdo. a aplicação é minimizada o hook deixa de funcionar, se alguém conhecer uma outra forma por favor me avise.


function UltimaEntrada: boolean;
var LInput: tagLASTINPUTINFO;
const TEMPOLIMITE = 45000;
begin
result := false;
LInput.cbSize := SizeOf(tagLASTINPUTINFO);
GetLastInputInfo(LInput);
if (GetTickCount - LInput.dwTime) > TEMPOLIMITE then result := true;
end;


Carval

Carval

Responder

Posts

15/10/2004

Sremulador

Já tentou o OnIdle


Responder

Gostei + 0

15/10/2004

Fórum Vini

tentei o uso de hooks de teclado/mouse, entretanto qdo. a aplicação é minimizada o hook deixa de funcionar

Para que ele continue funcionando é necessário que você use ele através de uma DLL...


Espero ter ajudado,
Vinicius;


Responder

Gostei + 0

16/10/2004

Carval

Já tentei utilizar o evento OnIdle e Dll´s entretanto o programa deixa de responder qdo. é minimizado, tem um componente Sleeper que funciona legal mas é pago, se alguém tiver o componente free, serve tb. :lol:


Responder

Gostei + 0

16/10/2004

Fórum Vini

Dll´s entretanto o programa deixa de responder qdo. é minimizado

Não deveria :?
Poste o código da sua DLL de hook aqui, pois deve ter algum erro nela.. A idéia de hooks globais(feitos usando DLLs) é justamente que eles continuem funcionando inclusive quando o foco não está na aplicação..:wink:


T+,
Vinicius;


Responder

Gostei + 0

16/10/2004

Ipc$

Já tentei utilizar o evento OnIdle e Dll´s entretanto o programa deixa de responder qdo. é minimizado


As hooks globais interceptam as msgs do Windows, estando sua aplicação em foco ou não.
Agora se sua dll de hook não se comunicar c/ sua aplicação, ela nunca irá saber se houve eventos de teclado ou mouse.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar