Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/02/2004, 14:10
Cince
 
Fecha de Ingreso: febrero-2004
Ubicación: Madrid
Mensajes: 2
Antigüedad: 20 años, 3 meses
Puntos: 0
***KeyLogger***

Hola, un buen dia me dio por hacer un key logger, y vaya, lo logré, pero se me planteaba un gran problema:


Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Con esta estupenda API lo que hacia era que cada milisegundo, comprobaba el estado de los 256 caracteres ansi:

For i = 0 To 256
If GetAsyncKeyState(i) = -32767 Then
Exit For
End If
Next i


Y asi se cual esta pulsada en cada momento y me la "logueo"

Todo era perfecto, hasta que me Tope con el gran problema. ¿Cuanto tardas en pulsar un tecla? mas de un milisegundo seguro, a si que, cada vez que pulsaba una tecla, me la escribia 10 o 20 veces.

A si que hice una "ñapa" y dije que si la tecla anterior es igual a la tecla nueva, no la "loguee", pero ahora si escribes una "elle" o "doble erre" solo me pone una, y eso es un problema.

Aqui va mi problema: ¿Se puede hacer que solo se loguee la tecla una vez sin importar cuanto tiempo la tengas pulsada?

Espero respuestas, gracias a todos.