PDA

Ver la Versión Completa : Bloqueo de teclado


Malon
27-10-2003, 17:39:42
Necesito ayuda. Como puedo bloquear el teclado en Windows XP. Encontre un componente pero sirve solo para Windows 98.
Gracias.

roman
27-10-2003, 17:49:14
En Inhabilitando teclas de Windows (http://www.clubdelphi.com/users/roman/hooks.php) tengo un método para interceptar el teclado en Windows2000 que quizá te sirva. Ahí se usa para algo no tan drástico como inhabilitar todo el teclado sino sólo algunas teclas pero me imagino, aunque no lo he probado que bastará quitar la llamada a CallNextHookEx al final del procedimiento KbdHook para lograr tu objetivo.

Otra forma, claro está, es desconectando el teclado del cpu :D

// Saludos

Malon
28-10-2003, 13:51:55
Muchas gracias. Lo pruebo y te cuento. Lo que busco es inhabilitar el teclado hasta habilitarlo desde otra PC.

Malon
28-10-2003, 20:47:50
Lo probe en W2k y funciona perfecto. Lo unico que no bloquea es
Ctrl-Alt-Del. Hay alguna forma de controlar esta combinacion de teclas ? Desde ya muchas gracias

Malon
30-10-2003, 15:30:18
Por favor, alguien sabe como bloquear la combinacion de teclas Ctrl-Alt-Del en Windows 2000 o XP, para que no se pueda cerrar la aplicacion delphi ?

delphi.com.ar
30-10-2003, 16:33:15
¿No funciona el SystemParametersInfo(SPI_SCREENSAVERRUNNING...?


¿Que ha pasado con los hooks?.. eso si tiene que funcionar!

roman
30-10-2003, 16:54:50
Posteado originalmente por delphi.com.ar
¿No funciona el SystemParametersInfo(SPI_SCREENSAVERRUNNING...?


¿Que ha pasado con los hooks?.. eso si tiene que funcionar!

En Windows2000 no funciona lo del protector de pantalla ni tampoco lo de los hooks para inhibir el Ctrl-ALt-Del.

Parece ser que el asunto es bastante más complicado ya que tiene que ver con todo el proceso de "Login" que realiza Windows y que está englobado en lo que llaman MSGina. Este es un proceso que al parecer se ejecuta antes que cualquier otro para evitar precisamente la intercepción de dicha combinación.

De que se puede hacer, sí que se puede pero para ello hay que escribir un dll que sustituya a MSGina. Esto no es de hackers, está bien especificado en la documentación del SDK de Windows. Por ejemplo, aquí, en la pc de mi trabajo, el cliente de la red Novell instala NWGina para reemplazar al original.

Según estuve viendo no es tampoco tan complicado ya que no se trata de hacer grandes cambios sino simplemente llamar a todas las rutinas del dll original y sólo interceptar a la que recibe la combinación pero hay que estudiarle bien ya que un errorcito podría dejar inutilizado el equipo: simplemente no entraría nunca a Windows.

Los interesados pueden buscar información en http://msdn.microsoft.com/library/en-us/security/security/winlogon_and_gina.asp?frame=true

// Saludos