Detectar pressionamento de tecla com o ap. em segundo plano
Olá galera...
bom, eu gostaria de saber c alguém aqui sabe como eu faço pra o meu aplicativo detectar se uma determinada tecla é pressionada no windows, com o programa minimizado por exemplo e se essa tecla for pressionada o programa simular um clique em um de seus botões por exemplo...
Grato pela atenção
abraços
bom, eu gostaria de saber c alguém aqui sabe como eu faço pra o meu aplicativo detectar se uma determinada tecla é pressionada no windows, com o programa minimizado por exemplo e se essa tecla for pressionada o programa simular um clique em um de seus botões por exemplo...
Grato pela atenção
abraços
Wart
Curtidas 0
Respostas
Arcanjo_junior
31/10/2005
De uma estudada em Hook.
Aqui que um componente que acho que vai lhe interessar, é free e extremamente fácil de se usar.
[url]http://bome.com/delphi/watch/[/url]
Bom trabalho.
<@rCANj0>
P.S.: Faça BOM uso desta tecnologia :D
Aqui que um componente que acho que vai lhe interessar, é free e extremamente fácil de se usar.
[url]http://bome.com/delphi/watch/[/url]
Bom trabalho.
<@rCANj0>
P.S.: Faça BOM uso desta tecnologia :D
GOSTEI 0
Wart
31/10/2005
hehehe, o uso vai ser bom... eu trabalho com georreferenciamento e eh embassado ficar clicando... eu consegui aki... vai ser uma mão na roda viu...
brigadão cara, um abraço
brigadão cara, um abraço
GOSTEI 0
Dgsfilho
31/10/2005
Estou fazendo um programinha que vai realizar determinadas funções quando for prescionada uma tecla, só que o programa não pode estar com o form ativo, ou seja, estarei utilizando qualquer aplicativo e quero chamar uma função do meu programa.
Exemplo do meu código:
No evento on clique de um botão nesse form ele esconde o form
Se minha aplicação está ativa isso funciona normalmente, mas se ela estiver Hide não funciona.
Alguém sabe como posso fazer isso com o form em modo Hide ou tro tipo, com tanto que ele não esteja aparecendo.
Exemplo do meu código:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin // se for prescionada a tecla F5 if Key = VK_F5 then begin ShowMessage(´Prescionou F5´); end; // obs.: A propriedade KeyPreview do form foi modificada para true end;
No evento on clique de um botão nesse form ele esconde o form
procedure TfmCliker.Button1Click(Sender: TObject); begin Form1.Hide; end;
Se minha aplicação está ativa isso funciona normalmente, mas se ela estiver Hide não funciona.
Alguém sabe como posso fazer isso com o form em modo Hide ou tro tipo, com tanto que ele não esteja aparecendo.
GOSTEI 0
Dgsfilho
31/10/2005
:) Esqueci de dizer que gostaria de fazer isso sem o uso de componentes.
GOSTEI 0
Vitor Rubio
31/10/2005
deem uma pesquisada aqui mesmo no forum sobre keylogger e apihooking. Deem uma olhada também na biblioteca bmsapihooking, do Nildo.
existem exemplos com as duas soluções.
a solução que não usa a blioteca do nildo é interessante pra vc ver como funcionam as coisas por dentro, tem um fonte assim, com um exe e uma dll, num dos artigos do site da clubedelphi, e tem o link pro download num dos tópicos do forum. vc pode adaptar para o que precisar.
existem exemplos com as duas soluções.
a solução que não usa a blioteca do nildo é interessante pra vc ver como funcionam as coisas por dentro, tem um fonte assim, com um exe e uma dll, num dos artigos do site da clubedelphi, e tem o link pro download num dos tópicos do forum. vc pode adaptar para o que precisar.
GOSTEI 0
Dgsfilho
31/10/2005
Cara não tem nada mais simples não? Algo que não utilize dll... Consegui fazer utilizando o componente Watch mas gostaria que não precisasse de nenhum componente ou dll. Se puder explicar com mais detalhes sou leigo nessa parte de hook e keylog :oops:
GOSTEI 0