Thema: Delphi Maus Hook Problem

Einzelnen Beitrag anzeigen

Flippo

Registriert seit: 26. Sep 2004
111 Beiträge
 
Delphi 2005 Personal
 
#1

Maus Hook Problem

  Alt 21. Mär 2006, 22:28
Hi,
hoffe hab die richtige Sparte erwischt, ich hab jetz schon so viele Sachen probiert und Tutorials gelesen und es klappt einfach immernoch nicht. Mein Problem:
Ich muss es merken wenn irgendwo außerhalb meiner Form mit der Maus geklickt wird. Dafür brauch ich einen Maushook hab ich gelesen. Der Funktioniert mitlerweile auch schon soweit, das ich es merke wenn in die Form geklickt wird, ich will es aber auch merken wenn ich z.B. die Taskleiste anklicke. Mein Code:
Delphi-Quellcode:
function MouseProc(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
begin
  if wParam = WM_LBUTTONDOWN then
  begin
  if c=true then
   begin
   getcursorpos(P);
        pp.x:=p.x;
        pp.y:=p.y;
        c:=false;
   end;
  end;
  Result := CallNextHookEx(HookHandle, nCode, wParam, lParam);
end;

HookHandle:=SetWindowsHookEx(WH_Mouse, @MouseProc, HInstance, 0);
form1.caption:='Bitte Punkt wählen';
C:=true;
while C=true do
begin
application.ProcessMessages;
sleep(100);
end;
UnhookWindowsHookEx(HookHandle);
HookHandle:=0;
Ich dachte das würde jezt Systemweit funkionieren tuts aber nicht, was muss ich da ändern.
Ideal wärs wenn ich sogar noch unterbinden könnte das Schaltflächen die während der Hook aktiv ist angeklickt werden nicht reagieren.

Bin ein bischen ratlos würde mich über Hilfe freuen

MFG

Flippo
  Mit Zitat antworten Zitat