Red de conocimiento de recetas - Industria de la restauración - Encuentre un código fuente completo de VB que se pueda compilar.

Encuentre un código fuente completo de VB que se pueda compilar.

Cree un formulario Form1 y un módulo Module1.

Colocar un control Timer1 en Form1.

Código de formulario:

Privado

Declaración

Función

Setkothops

p>

Movimiento de Liberación

"Usuario 32 "

(ByVal

x

Me gusta

Largo,

ByVal

y

como

dragón)

como

largo

Privado

Submarino

Form_Load()

I. Visible

=

Aplicación incorrecta

. Tarea visible

=

Incorrecta

Temporizador 1.

intervalo

=

10000

Agregar gancho

Fin

Submarino

privado

submarino

form_unload(cancelar

como

entero)

delhook

Fin

Submarino

Privado

Submarino

Timer1_Timer()

Setkusopus

50,

50

Fin

Submarino

Código de módulo

Público

Declaración

Función

SetWindowsHookEx

Movimiento de Liberación

"Usuario 32"

Alias

" SetWindowsHookExA "

(ByVal

idHook

Como

largo,

ByVal

lpfn

Como

largo,

ByVal

hmod

Me gusta

Largo,

ByVal

dwThreadId

Me gusta

龙)

Me gusta

Larga

Declaración Pública

Función

Deshook WindowsHookEx

Movimiento de Liberación

"Usuario 32"

(ByVal

hHook

Me gusta

dragón)

Me gusta

Larga

Declaración Pública

Función

GetKeyState

Movimiento de Liberación

"Usuario 32"

(ByVal

nVirtKey

Me gusta

dragón)

Me gusta

Entero

Público

Declaración

p>

Función

Llamar a NextHookEx

Movimiento de Liberación

"Usuario 32"

(ByVal

hHook

es tan largo como

,

ByVal

ncode

es tan largo como

,

ByVal

wParam

como

largo,

lParam

como

Cualquiera)

Me gusta

Larga

Declaración Pública

Barco de Buceo

Copia Memoria

Liberación Movimiento

"Kernel 32"

Alias

" RtlMoveMemory "

p>

(lpvTest

Me gusta

Cualquiera,

ByVal

lpvSource

Me gusta

Largo,

ByVal

cbCopiar

Me gusta

Dragón)

Público

Tipo

Mensaje de teclado

vKey

Me gusta

largo

código virtual

(También

ampHFF)

Cielo

Como

Largo

p>

Escanear código

Bandera

Me gusta

Largo

Botón: 128

Ascensor: 0

Tiempo

Me gusta

Largo

Tiempo de ejecución de la ventana

Fin

Tipo

Público

Constante

WH _Keyboard_LL

=

13

Público

Constante

Alt_Down

=

ampH20

-

Mensaje

Público

Constante

HC_ACTION

=

Público

Constante

HC_SYSMODALOFF

=

Cinco

Público

Constante

HC_SYSMODALON

=

Cuatro

Mensajes de teclado

Público

Constante

WM_KEYDOWN

=

ampH100

Público

Constante

WM_KEYUP

=

ampH101

Público

Constante

WM_SYSKEYDOWN

=

ampH104

Público

Constante

WM_SYSKEYUP

=

ampH105

Público

keyMsg

Igual que

Mensaje de teclado

Público

lHook(1)

Igual que

Largo

Enganche de teclado

Privado

Función

CallKeyHookProc(ByVal

Contraseña

Como

largo,

ByVal

wParam

Como

largo,

ByVal

lParam

Me gusta

Dragón)

Me gusta

largo

Dim

lKey

Me gusta

Largo

Dim

strKeyName

Me gusta

Línea

*

255

tenue

Longitud del carácter (longitud de cadena)

Como

Largo

Si

Contraseña

=

HC_ACTION

Entonces

Copiar memoria

keyMsg,

lParam,

LenB (mensaje clave)

p>

Seleccionar

Caso

wParam

Caso

WM_SYSKEYDOWN,

WM_KEYDOWN,

p>

WM_SYSKEYUP,

WM_KEYUP:

si

keyMsg.sKey

=

32

Entonces

CallKeyHookProc

=

1

Protege la tecla d

Fin

<

p>Seleccionar

Fin

Si

Si

Contraseña

lt gt

Entonces

CallKeyHookProc

=

CallNextHookEx(0,

Código,

wParam,

lParam)

Fin

Si

Fin

Función

Gancho de instalación

Público

Submarino

AddHook()

Gancho de teclado

lHook(0)

=

SetWindowsHookEx(WH _Keyboard_LL

Dirección

CallKeyHookProc,

App.hInstance,

0)

Fin

Submarino

Quitando el anzuelo

Público

Submarino

p>

Del Hook()

Descolgar WindowsHookEx

lHook(0)

Fin

Submarino