Fórum Hook de teclado. Pq tem que ser via DLL? #187261
08/10/2003
0
A dúvida deve ser de nível médio, mas é o seguinte:
Pq para fazer um HOOK para capturar teclas, temos que colocar as funções de CallBack em uma DLL e não dentro do próprio programa?
[]s Robson
Cyberrob
Curtir tópico
+ 0Posts
08/10/2003
Marcelo Saviski
como uma Dll é mais independente do que um exe, e existe justamente para isso,
o Windows manda tudo quante é tranqueira de WindowProc para ela
Gostei + 0
08/10/2003
Nildo
Na verdade é porque você precisa injetar a DLL no sistema operacional inteiro, para que possa interceptar todas as mensagens que o windows envia. No caso seria que pressionou uma tecla. Se você está em um Edit por exemplo e aperta uma tecla, o windows envia a mensagem que apertou a tecla apenas para o Edit, e não para todas as janelas (Se fosse para todas voce poderia interceptar pelo seu EXE). Como sua DLL vai estar injetada em todo o OS, vai etsar no Edit também, e sua DLL vai receber a mensagem antes que o Edit, possibilitando assim que você altere o código da tecla pressionada ou mesmo bloquear essa mensagem. Se fosse possível injetar o EXE como uma DLL você poderia interceptá-la pelo próprio EXE. Mas como não pode então é pela DLL mesmo.
Espero que tenha entendido. QUalquer dúvida responde essa mensagem!
Gostei + 0
08/10/2003
Beppe
Ataliba.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)