Olá pessoal =)
Vou mostrar a vocês como bloquear o mouse e o teclado pelo Delphi.
Já vou deixar avisado que, caso você vá testar no seu PC, lembre-se de chamar a função para desbloquear logo após a função de bloquear. Senão você vai ficar sem mouse e sem teclado e só te resta o "reset" =P
Bom...essa é uma função que ficou disponível a partir do Windows 98 e não se sabe se vai estar disponível nas próximas versões do Windows (só testei no XP, no Vista já não sei se tem, se alguem puder testa ai e posta
). Para não termos nenhum problema com isso, vamos checar se a função está disponível.
Na cláusula var do seu programa (acima de implementation), declare o seguinte:
Aqui vai a função que checa se a função BlockInput está disponível na User32.dll e já carrega a DLL para podermos chamar a função:
Muito bem, essa função carrega a DLL, procura o entry point da função dentro da biblioteca e, se achar, retorna True e o ponteiro para a função fica na variável pt.
Observe que essa função é geral, isto é, serve para procurar qualquer função em qualquer biblioteca. Basta fornecermos a biblioteca , a função a ser procurada e um endereço onde ele vai guardar o ponteiro para a função.
No nosso caso, vamos passar o endereço da variável declarada lá em cima "BlockInput: function..."
Agora no evento onClick de algum botão, ou em qualquer outro evento de sua preferência, coloque:
Bom...não preciso dizer que o código acima bloqueia o mouse e o teclado por 10 segundos (que parecem uma eternidade quando você está testando, sempre vem aquele desespero... :cool: )
Muito fácil e útil pra quem gosta de bagunçar com trojans =)
Flws
Vou mostrar a vocês como bloquear o mouse e o teclado pelo Delphi.
Já vou deixar avisado que, caso você vá testar no seu PC, lembre-se de chamar a função para desbloquear logo após a função de bloquear. Senão você vai ficar sem mouse e sem teclado e só te resta o "reset" =P
Bom...essa é uma função que ficou disponível a partir do Windows 98 e não se sabe se vai estar disponível nas próximas versões do Windows (só testei no XP, no Vista já não sei se tem, se alguem puder testa ai e posta
![Feliz](https://forum.guiadohacker.com.br/images/smilies/smile.png)
Na cláusula var do seu programa (acima de implementation), declare o seguinte:
Código:
BlockInput : function(Block: BOOL): BOOL; stdcall;
Código:
function CarregaDLL(Nome, funcao: string; var pt: pointer): boolean; var lib: THandle; begin pt := nil; if LoadLibrary(PChar(Nome)) = 0 then result:=false; lib := GetModuleHandle(PChar(Nome)) ; if lib <> 0 then begin pt := GetProcAddress(lib, PChar(funcao)) ; if p <> nil then Result := true; end; end;
Observe que essa função é geral, isto é, serve para procurar qualquer função em qualquer biblioteca. Basta fornecermos a biblioteca , a função a ser procurada e um endereço onde ele vai guardar o ponteiro para a função.
No nosso caso, vamos passar o endereço da variável declarada lá em cima "BlockInput: function..."
Agora no evento onClick de algum botão, ou em qualquer outro evento de sua preferência, coloque:
Código:
if CarregaDLL('USER32.DLL', 'BlockInput', @BlockInput) then begin ShowMessage('Seu mouse e teclado serão desativados por 10 segundos! Mantenha a calma...') ; BlockInput(true) ; Sleep(10000) ; BlockInput(false) ; end;
Muito fácil e útil pra quem gosta de bagunçar com trojans =)
Flws
![Parabéns!](https://forum.guiadohacker.com.br/images/smilies/wink.png)
Comment