Apagar monitor pulsando una tecla



El siguiente software muestra la forma de utilizar hooks de teclado para apagar el monitor (pulsando la tecla "Pause" en este caso). Éste se volverá a encender cuando se pulse una tecla o se mueva el ratón.

Lo que hace el programa es:
- Hacer una llamada a LoadLibrary para cargar la Dll (MonitorOffDll).
LibHandle:=LoadLibrary('MonitorOffDLL.dll')

- Llama a GetProcAddres para conseguir la dirección de la DLL.
HookProcAddress:=GetProcAddress(LibHandle, pchar(1) ); InitializeHook:=GetProcAddress(LibHandle,pchar(2) );

- Llama a SetWindowsHookEx especificando WH_KEYBOARD como tipo de hook y con la dirección obtenida en el punto anterior. El parámetro ThreadID se pone a cero para indicar que es un hook global.
CurrentHook:=SetWindowsHookEx(WH_KEYBOARD,HookProcAddress,LibHandle,0);

- Llama al procedimiento de inicialización del DLL para pasar el handle asignado al hook.
InitializeHook(CurrentHook, Extractfilepath(application.exename));

(Pruebas realizadas en Delphi 7)

Link:
http://www.delphiforfun.org/Programs/Download/MonitorOffSource.zip




No hay comentarios:

Publicar un comentario