![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Hola, que tal... Espero que todo bien... aqui yo nuevito nuevito en este foro...Bueno al grano entonces, resulta que tengo que desarrollar un proyecto de administracion de maquinas y decearia que alguien me facilitara algun codio fuente que me ayude a bloquear el teclado hasta que una aplicacion en el servidor lo habilite... he intentado usar ASM pero en XP no me chunca... HELP |
|
#2
|
||||
|
||||
|
Pienso que podrías usar un hook del teclado a nivel de sistema para bloquear toda actividad en el teclado. A reserva de que consultes la documentación (busca Hooks en la ayuda del SDK de Windows) puedes ver un ejemplo en la unidad hooks.pas de mi página que muestra cómo instalar y desintalar un hook, cosa que harías según el mensaje que mande el servidor.
// Saludos |
|
#3
|
|||
|
|||
|
Prueba...
Yo te puedo ayudar, pero lo que te voy a decir anula tanto el teclado como el raton.
Usaremos una función que viene en el user32.dll denominada "BlockInput", y que corta toda comunicación con los periféricos del usuario (teclado y ratón)
Puedes hacer pruebas poniendo un timer a 5, 10 seg... para que te desbloquee el teclado, ¡o si nos deberás reiniciar el PC! "FunctionExists" te sirve para cargar y ejecutar cualquier proceso o función que necesites ![]() Suerte Última edición por roman fecha: 23-06-2005 a las 22:55:59. Razón: Cortar líneas demasiado largas |
|
#4
|
||||
|
||||
|
Cita:
// Saludos |
|
#5
|
|||
|
|||
|
bueno di uso a estos codigos pero ahora quiero que el ctrl+alt+supr tampoco lo detecten como hago gracias por sus respuestas
___________________________________________________ Al que madruga le da sueño |
|
#6
|
||||
|
||||
|
En WinXP/2000 esto es mucho más difícil. Cuando arrancas Windows, lo primero en ejecutarse es WinLogon.exe quien a su vez carga una biblioteca llamada gina.dll. Esta biblioteca se encarga de todo el proceso de autenticación del usuario y "se apropia" de la combinación ctrl-alt-supr de manera que no hay tiempo de interceptarla uno mismo. Entonces, al parecer, la única manera de poder lidiar con ello es escribiendo una dll que reemplace a gina. Esto puede hacerse y está documentado en el SDK de Windows pero no es tarea fácil ya que tienes que implementar muchas funciones y tener cuidado con no bloquear el proceso normal de carga del sistema.
Ahora una pregunta por curiosidad: ¿por qué pones el icono del pulgar hacia abajo? ¿Hay algo que desapruebas? // Saludos |
|
#7
|
||||
|
||||
Bueno a mi me Funciono esto en Win98:Código:
var
dummy : integer;
{Desactivar el Ctrl-Alt-Del:}
SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, @dummy, 0);
Código:
var
dummy : integer;
{Volver a Activarlo}
SystemParametersInfo( SPI_SCREENSAVERRUNNING, 0, @dummy, 0);
Esto me Funciono para WinXP y 2000 Añade Registry en el uses de tu form Código:
procedure TForm1.Button1Click(Sender: TObject);
procedure DisableTaskMgr(bTF: Boolean);
var
reg: TRegistry;
begin
reg := TRegistry.Create;
reg.RootKey := HKEY_CURRENT_USER;
reg.OpenKey('Software', True);
reg.OpenKey('Microsoft', True);
reg.OpenKey('Windows', True);
reg.OpenKey('CurrentVersion', True);
reg.OpenKey('Policies', True);
reg.OpenKey('System', True);
if bTF = Truethen
begin
reg.WriteString('DisableTaskMgr', '1');
end
else if bTF = False then
begin
reg.DeleteValue('DisableTaskMgr');
end;
reg.CloseKey;
end;
begin
//Desabilitamos el Ctrl-Alt-Del
//Disable Ctrl-Alt-Del
DisableTaskMgr (True);
end;
__________________
Dark Drakon:: "Ego sum Draco dormiens ... Aut insanit Draco, aut Versus facit..." |
![]() |
|
|
|