Przechwytywanie przyciśnięcie guzika myszy

0

Chodzi mi dokładnie o to aby przechwycić kiedy użtykownik przycisną guzik myszki poza obrębem naszego programu podczas gdy nie jest ona oktywny.

Znalazłem to ale działa tylko gdy moja app jest aktywna:

Msg.lParam=WM_LBUTTONDONW

i jeszcze jedno. Jak sprawdzić czy użytkownik przycisną dwa guziki myszki równocześnie.

Dzięki za pomoc.

0

Slyszales o takim pojeciu jak HOOK.. mnostwo podobnych tematow jest na forum... ponizej masz przyklad jego wykozystania

function MouseHook(Code: Integer; wParam : WPARAM;
  lParam : LPARAM): Longint; stdcall;
var
  Buffer : TEventMsg;
  P : TPoint;
  Buffer2 : array[0..128] of Char;
begin
  Result := 0; 
  Buffer := PEventMsg(lParam)^;

  if Buffer.Message = WM_LBUTTONDOWN then  // jezeli nacisnieto lewy klawisz myszki
  begin
    {...}
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  MainHook := SetWindowsHookEx(WH_JOURNALRECORD, MouseHook, hInstance, 0);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  UnhookWindowsHookEx(MainHook);
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1