domingo 13 de diciembre de 2009

Lectura de Teclas

antes que todo disculpen la inactividad del blog pero por motivos personales me ha costado escribir... mm bueno aquí les dejo un pedazo de un módulo con el que podrían crear un programa de lectura de teclas, con este code les quiero ahorrar tiempo a las personas que vayan a crear programas de lectura de teclas como dije anteriormente... también keylogger para control parental o cosas de este tipo:



Public Function ParseText(KeyCode As Integer, Shift As Integer, CapsLock As Integer) As String
On Error Resume Next
If CapsLock = 1 Then Shift = 1
Select Case KeyCode
'Enter key
Case 13
ParseText = vbCrLf

'A-Z
Case 65 To 90
If Shift = 0 Then
ParseText = LCase(Chr(KeyCode))
Else
ParseText = UCase(Chr(KeyCode))
End If

'0-9
Case 48
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = "="
End If
Case 49
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = "!"
End If
Case 50
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = "@"
End If
Case 51
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = "#"
End If
Case 52
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = "$"
End If
Case 53
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = "%"
End If
Case 54
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = "&"
End If
Case 55
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = "/index.html"
End If
Case 56
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = "("
End If
Case 57
If Shift = 0 Then
ParseText = Chr(KeyCode)
Else
ParseText = ")"
End If

' 0-9
Case 96
ParseText = "0"
Case 97
ParseText = "1"
Case 98
ParseText = "2"
Case 99
ParseText = "3"
Case 100
ParseText = "4"
Case 101
ParseText = "5"
Case 102
ParseText = "6"
Case 103
ParseText = "7"
Case 104
ParseText = "8"
Case 105
ParseText = "9"

'NumberPad
Case 144
ParseText = "{Num Lock}"
Case 111
ParseText = "/index.html"
Case 106
ParseText = "*"
Case 109
ParseText = "-"
Case 107
ParseText = "+"
Case 110
ParseText = "."

'Misc Keys
Case 145
ParseText = "{Scroll Lock}"
Case 19
ParseText = "{Pause/Break}"
Case 45
ParseText = "{Insert}"
Case 36
ParseText = "{Inicio}"
Case 33
ParseText = "{Re Pag}"
Case 46
ParseText = "{Supr}"
Case 35
ParseText = "{Fin}"
Case 34
ParseText = "{Av Pag}"


'Arrow Keys
Case 38
ParseText = "{Arriba}"
Case 37
ParseText = "{Izquierda}"
Case 39
ParseText = "{Abajo}"
Case 40
ParseText = "{Derecha}"
Case 44
ParseText = "[Impr Pant]"
'Function Keys
Case 112
ParseText = "{F1}"
Case 113
ParseText = "{F2}"
Case 114
ParseText = "{F3}"
Case 115
ParseText = "{F4}"
Case 116
ParseText = "{F5}"
Case 117
ParseText = "{F6}"
Case 118
ParseText = "{F7}"
Case 119
ParseText = "{F8}"
Case 120
ParseText = "{F9}"
Case 121
ParseText = "{F10}"
Case 122
ParseText = "{F11}"
Case 123
ParseText = "{F12}"

Case 27
ParseText = "{Esc}"
Case 9
ParseText = "{Tab}"
Case 20
ParseText = "{Caps Lock}"
Case 160
'ParseText = "{LeftShift}"
Case 161
'ParseText = "{RightShift}"
Case 17
ParseText = "{Ctrl}"
Case 91
ParseText = "{Win Key}"
Case 92
ParseText = "{Win Key}"
Case 164
ParseText = "{Alt}"
Case 165
ParseText = "{Alt}"
Case 32
ParseText = " "
Case 8
Form_key.Text_key.Text = Left(Form_key.Text_key.Text, Len(Form_key.Text_key.Text) - 1)

'caracteres especiales
Case 189
If Shift = 0 Then
ParseText = "-"
Else
ParseText = "_"
End If
Case 187
If Shift = 0 Then
ParseText = "="
Else
ParseText = "+"
End If
Case 219
If Shift = 0 Then
ParseText = "?"
Else
ParseText = ","
End If
Case 221
If Shift = 0 Then
ParseText = "¿"
Else
ParseText = "¡"
End If
Case 186
If Shift = 0 Then
ParseText = ";"
Else
ParseText = ":"
End If
Case 222
If Shift = 0 Then
ParseText = "'"
Else
ParseText = """"
End If
Case 188
If Shift = 0 Then
ParseText = ","
Else
ParseText = "<"
End If
Case 190
If Shift = 0 Then
ParseText = "."
Else
ParseText = ">"
End If
Case 191
If Shift = 0 Then
ParseText = "/index.html"
Else
ParseText = "?"
End If
Case 220
If Shift = 0 Then
ParseText = "\"
Else
ParseText = "|"
End If
Case 192
If Shift = 0 Then
ParseText = "`"
Else
ParseText = "~"
End If
Case 226
If Shift = 0 Then
ParseText = "<"
Else
ParseText = ">"
End If
End Select
End Function




el código no está 100% hecho por mi fui recolectando pedasos de lugares para armar un código de uso optimo para la captura de teclas... espero les sirva... yo ya lo probe en multiples ocaciones y funciona a la perfección...


Suscribanse ;)



Saludos
Dr.White