Ejemplos usando el Api de windows para Visual basic

234 - Hook para bloquear el mouse y el teclado

<Volver> - Anterior - Siguiente



 

Dos ejemplos en visual basic que implementan un Hook para poder bloquear el teclado y mouse a nivel de sistema

 

  1. Bloquear el teclado y mouse completamente por un tiempo
  2. Bloquear la estación de trabajo

 


 

1 - Bloquear el teclado y mouse

Este ejemplo lo extraí de este programa : Bloquear PC creado por Tim Bates.

y lo que hace el código es bloquear a nivel de sistema, el teclado y mouse mediante un Hook, por un tiempo determinado. Ese tiempo se establece en la variable Tiempobloqueo en donde se le especifican los segundos en que el Hook estará activo.

 

Ejemplo

 

Código fuente en el form

 

 

Código fuente en el módulo bas

 

 


2 - Bloquear la estación de trabajo

 

Código fuente probado solo en windows xp

Este otro ejemplo, es similar al anterior, y deshabilita el mouse por completo y el teclado en forma parcial.

Lo que hace es maximizar la ventana del formulario y la pone AlwaysOnTop. A su ves bloquea el teclado completo, menos las teclas para los números y las teclas desde la a-z. ( Para que en un textox se pueda escribir un password y volver a habilitar todo, es decir remover el Hook )

También se habilita la tecla delete, Tab y la de retroceso

Tambien , el ejemplo comprueba ( dentro del procedimiento que hace el Hook (IsHooked )) , constantemente si se intenta abrir el administrador de tareas, ya que por mas que el teclado esté totalmente desactivado, las teclas ctrl+alt+sup no las desactiva. Entonces si se abre el Administrador de tareas , se cierra con el Api SendMessage.

 

Ejemplo

Colocar en el formulario un Text1 y agregar al proyecto un módulo bas

 

Importante : Una ves bloqueado todo, escribir en el textbox > 123 y presionar Enter , para poder reestablecer el formulario a su estado normal y también desbloquear el KeyBoard y el mouse

Nota: al probar el código , hacer backup y copias del proyecto y corregir los errores , por que cualquier error mientras corra el hook, se cerrará el programa inesperadamente, inclusive el Ide de visual basic . y es muy posible que haya que reiniciar la pc, ya que el teclado y el mouse quedarán bloqueados

 

Código fuente en el formulario

 

 

Código fuente en el módulo bas

 

Nota: Parte de este ejemplo lo saqué de la web de Microsoft. Dicho ejemplo, lo que mostraba era como desactivar las teclas de sistema Alt+Tab , Alt+esc y Ctrl+Esc

 



Buscar en Recursos vb