Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Detectar pulsación de la tecla "º" (https://www.clubdelphi.com/foros/showthread.php?t=55212)

Khronos 10-04-2008 16:37:08

Detectar pulsación de la tecla "º"
 
La idea es la siguiente: tengo un programa corriendo en segundo plano y necesito que detecte la pulsación de la tecla "º" (la tecla situada a la izquierda del 1).
No me importa si tengo que usar una dll como hook.

Salu2 y gracias.

cHackAll 10-04-2008 17:01:07

Código Delphi [-]
var hHook: Cardinal;
 
function HookProc(Code, wParam, lParam: Cardinal): Cardinal; stdcall;
begin
 if (Code = HC_ACTION) and (PCardinal(lParam)^ = 192) then
  MessageBeep(0);// Aqui haces lo que debes hacer... MUCHO cuidado con el manejo de mensajes de teclado y raton!
 Result := CallNextHookEx(hHook, Code, WParam, LParam);
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
 hHook := SetWindowsHookEx(13{WH_KEYBOARD_LL}, @HookProc, HInstance, 0);
end;

Khronos 10-04-2008 17:09:17

Perdona cHackAll pero no me funcionó tu código. Ademas el hook tiene que ser detectado en cualquier aplicación.

Salu2

keyboy 10-04-2008 17:19:23

Acabo de probar el código de cHackAll y funciona como se espera. El único problema es el código de la tecla. En mi caso funcionó con 220 en lugar de 192. Supongo que dependerá del teclado.

Bye


La franja horaria es GMT +2. Ahora son las 01:33:51.

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