bloquear teclas
Hola, estoy creando una aplicacion que lo que hace es cubrir toda la pantalla y crear una especie de protector, llevo casi todo listo, uno de las ultimas cosas que me falta es el bloqueo de teclas,¿Como puedo bloquear teclas?, todos los derivados de la tecla de windows , Ctrl+Alt+Spr y otras teclas especiales, no se me ocurre como hacerlo, de seguro que a ti sí......gracias...
54LU2 |
A mi no se me ocurre, pero sé de alguien que sí se le ocurrió es el componente Hooks de nuestro moderador roman.
Echa una visual a toda la web que no tiene desperdicio. Saludos |
gracias lo revisé pero coloco la instruccion y no me sucede nada, coloco :
hooks.LockKey(lkAltTab, False); y tambien hice la prueba con hooks.LockKey(lkAltTab, True); en OnCreate y en OnActivate pero no pasa nada.... ¿que puede ser? |
1 Archivos Adjunto(s)
Por lo que mencionas de cubrir toda la pantalla, me da la impresión de que lo que buscas lo puedes lograr con algo mucho más eficiente que bloquear las teclas, que son los objetos Desktop, de los cuales hice mención aquí.
Dejo como adjunto el mismo ejemplo que pongo allá. // Saludos . |
Cita:
// Saludos |
gracias eso lo que me faltaba eñl SetHook te lo agradesco demasiado, y por lo de tu ejemplo esta buenisimo, pero yo ya tengo el mio y no me gustaria cambiarlo por otro pero igual muy util para otras personas, gracias por todo-....
54LU2 |
Hola, se me ha surgido casi el mismo problema pero con la tecla Ctrl+Alt+Supr, como desactivo estas teclas:
Ctrl+Alt+Supr y Ctrl+Alt+. y cuand salga de mi applicacin vuelvan a activarse gracias. |
Bloquear Ctr+Alt+Supr no es una tarea sencilla. Una solución es la que te dio roman, que no bloquea la combinación de teclas pero como el "Administrador de tareas" queda oculto en el otro Desktop puede servir.
Otra posible solución es usar la entrada del registro DisableTaskMgr: Código:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System] Y por ultimo, si de verdad quieres bloquear la combinación de teclas puedes crearte una dll GINA (esto no es algo sencillo) o puedes inyectarte a lo bestia en el proceso winlogon.exe (aquí un ejemplo). |
Cita:
Saludos |
Cita:
Cita:
|
Cita:
Cita:
// Saludos |
gracias, a todos, ya lo solucioné, colocando un timer a un intervalo de 100 milisegundos con la siguiente instruccion:
SendMessage(FindWindow(nil, 'Administrador de tareas de Windows'), WM_SYSCOMMAND, SC_CLOSE, 0); al hacer clic Ctrl+Alt+Supr este aparece y desaparece con un tiempo de 100 ms gracias a toooodooosss, si necesitan algo intentaré ayudarlos.. gracias 54LU2 |
La franja horaria es GMT +2. Ahora son las 06:04:12. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi