capturar eventos
Olá, preciso fazer um programa que rode como um serviço (background)
e que capture qdo o usuário aperta alguma tecla(não preciso sabe qual tecla) ou
mova o mouse ...
alguém tem alguma ideia de como posso fazer este programa?
e que capture qdo o usuário aperta alguma tecla(não preciso sabe qual tecla) ou
mova o mouse ...
alguém tem alguma ideia de como posso fazer este programa?
Zxyv
Curtidas 0
Respostas
Marcelo Saviski
29/08/2003
Crie uma dll + ou - assim:
depois, crie algum programa que vai carregar a dll:
e declare essas varéveis:
para carregar a dll e executar a função toda vez que teclar algo:
você pode trocar esse: WH_KEYBOARD por outra coisa, acho que ai existem várias opções, essa faz com que q função seja executada toda fez que teclar algo, tem tambemde quando mover o mouse, e outras...
e para ´descarregar´ a DLL:
esses procedimentos foram retirados de um exemplo que tem aqui no site do clube delphi ´KeyLogof´, keylogf foi desenvolvido por: Richard de Jesus Natal
library FazAlgumaCoisaQuandoTeclaAlgo;
uses
Windows,
SysUtils;
{$R *.RES}
function function FazAlgumaCoisa(code:Integer;wParam:WPARAM;lParam:LPARAM):LRESULT stdcall;
begin
if (code <> HC_NOREMOVE)and(lParam<0) then begin
case wParam of
//coloque aqui o que vai acontecer quando preesionar alguma tecla
//ex: VK_Return: quando pressionar enter
end;
Result := CallNextHookEx(HHOOK(nil), code, wParam, lParam);
end;
exports
FazAlgumaCoisa;
begin
end.depois, crie algum programa que vai carregar a dll:
e declare essas varéveis:
idKeyLog : HHOOK; KeyLogDLL: LongWord; KeylogHookProc : FARPROC;
para carregar a dll e executar a função toda vez que teclar algo:
KeylogDLL:=LoadLibrary(´A sua dll.dll´);
KeylogHookProc:=GetProcAddress(KeylogDLL,´FazAlgumaCoisa´{nome da função});
idKeylog:=SetWindowsHookEx(WH_KEYBOARD,KeylogHookProc,KeyLogDLL,0);você pode trocar esse: WH_KEYBOARD por outra coisa, acho que ai existem várias opções, essa faz com que q função seja executada toda fez que teclar algo, tem tambemde quando mover o mouse, e outras...
e para ´descarregar´ a DLL:
UnhookWindowsHookEx(idKeyLog);
esses procedimentos foram retirados de um exemplo que tem aqui no site do clube delphi ´KeyLogof´, keylogf foi desenvolvido por: Richard de Jesus Natal
GOSTEI 0