Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-01-2009
alquimista alquimista is offline
Miembro
 
Registrado: ene 2008
Posts: 209
Poder: 17
alquimista Va por buen camino
como detectar multiples teclas en un mensaje de teclado

Me gustaria saber si se han pulsado las teclas ctrl+shift+Alt +F5 por ejemplo si tengo un mensaje de teclado (es para usarlo en un hook de teclado)

var Mensaje : TMessage;

utilizando Mensaje.lparam

Alguna sugerencia?

Saludos
Responder Con Cita
  #2  
Antiguo 06-01-2009
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 24
ContraVeneno Va por buen camino
Código Delphi [-]
procedure TForm.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 If (Key=VK_F5) and (ssCtrl in shift) and (ssShift in shift) and (ssAlt in Shift) Then begin
     showmessage('press, press, press');
end;
__________________

Responder Con Cita
  #3  
Antiguo 06-01-2009
alquimista alquimista is offline
Miembro
 
Registrado: ene 2008
Posts: 209
Poder: 17
alquimista Va por buen camino
La anterior rutina es para cuando la app tiene el foco...
es para hacerlo a partir de un message.lparam que tiene 32 bits, aunque la app no tenga el foco.
Responder Con Cita
  #4  
Antiguo 06-01-2009
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 21
cHackAll Va por buen camino
Código Delphi [-]
unit Unit1;
 
interface
 
uses Windows, Messages, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
 
type
 TForm1 = class(TForm)
  procedure FormCreate(Sender: TObject);
  procedure HotKey(var Message: TMessage); message WM_HOTKEY;
 end;
 
var Form1: TForm1;
 
implementation
 
{$r *.dfm}
 
procedure TForm1.FormCreate(Sender: TObject);
begin
 RegisterHotKey(Handle, 666, MOD_ALT or MOD_CONTROL or MOD_SHIFT, VK_F5);
end;
 
procedure TForm1.HotKey(var Message: TMessage);
begin
 if Message.WParam = 666 then
  begin
   SetForegroundWindow(Handle);
   ShowMessage('HOT key');
  end;
end;
 
end.
__________________
RTFM > STFW > Foro > Truco > Post > cHackAll > KeBugCheckEx
Responder Con Cita
  #5  
Antiguo 06-01-2009
alquimista alquimista is offline
Miembro
 
Registrado: ene 2008
Posts: 209
Poder: 17
alquimista Va por buen camino
Talking

FUNCIONA cHackAll !!!

ok...

Ya lo probe y va muy bien...


Gracias...pensaba que solo se podia haciendo hook con dll.

Un saludo. gracias a todos...
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿Se puede anular teclas del teclado mediante el registro? Pablo Carlos API de Windows 3 12-10-2008 17:32:31
Detectar combinacion de teclas dblx API de Windows 1 13-03-2008 15:44:26
Detectar el uso de las Teclas pichi Vignola Varios 1 16-06-2006 15:18:38
Capturar Teclas Del Teclado. utephi_14 OOP 2 17-03-2005 14:19:18
Enviar teclas al teclado albeiro_ospina API de Windows 12 03-07-2003 01:24:48


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


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
Copyright 1996-2007 Club Delphi