RegisterHotKey está pensado para combinaciones de teclas... pero nada te impide realizarlo con la tecla A, B, C, D.
Es simplemente un gancho a la tecla/combinación que sea. Y sí, mientras tu aplicación esté funcionando recibirá la tecla pulsada por el usuario, ya esté en Word, Excel, Bloc de notas, etc. De hecho la recibe antes que las demás aplicaciones, por tanto, tú en tu keylogger deberás permitir el paso de la tecla hacia las demás aplicaciones.
Se permiten 49.151 teclas registradas, ya que segun la ayuda el rango es de:
Cita:
Empezado por Api de delphi
range 0x0000 through 0xBFFF. A shared dynamic-link library (DLL) must specify a value in the range 0xC000 through 0xFFFF
RegisterHotKey fails if the keystrokes specified for the hot key have already been registered by another hot key.
|
Aunque normalmente no hay otras aplicaciones con ganchos de teclado, puede que alguno en particular si esté pillado, y entonces no recibirás la notificación. Consecuentemente no tienes 49.000 ganchos sino algunos menos.
Yo uso ganchos de este tipo para:
Apagar (ctrl+F11),
reiniciar(ctrl+ F10),
forzar reiniciado(ctrl+alt+F10,
forzar apagar(ctrl+alt+F11),
Apagar los monitores(F4),
Abrir mi buscador de programas(F10)
.
Hasta ahora no me ha dado problemas.
He hecho la prueba con la tecla A, y tambien funciona.
Saludos