En una primera aproximación podemos escribir el siguiente código que responde a las pulsaciones y en el orden impuesto:
Ctl + RBUTTON + G ó RBUTON + Ctl + G
y
Ctl + RBUTTON + P ó RBUTON + Ctl + P
Código Delphi
[-]
procedure TForm1.HotKey(var Message: TMessage);
begin
if (GetAsyncKeyState(VK_RBUTTON) and $8000) <> 0 then
begin
if Message.WParam = 0 then
Windows.Beep(2000, 200);
if Message.WParam = 1 then
Windows.Beep(1000, 200);
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
RegisterHotKey(Handle, 0, MOD_CONTROL, Ord('P'));
RegisterHotKey(Handle, 1, MOD_CONTROL, Ord('G'));
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
UnregisterHotKey(Handle, 0);
UnregisterHotKey(Handle, 1);
end;
Saludos.