
Zitat von
rawsoul:
das Problem liegt am Hook selbst. Die BalloonTipMessage war nur zum Prüfen da

Beim Debuggen ist wichtig, dass die Debugausgaben 150% ankommen. Ein BalloonTip wäre mir zu unsicher.
Wird denn KeyboardHookProc überhaupt jemals von aussen aufgerufen?
Delphi-Quellcode:
function KeyboardHookProc(code: Integer; wParam: Word; lParam: LongWord): LongWord; stdcall;
begin
OutputDebugString('in KeyboardHookProc()');
Assert(Assigned(frmMain));
frmMain.Caption := 'in KeyboardHookProc()'; // <====
if code < 0 then
begin
Result := CallNextHookEx(frmMain.hook, code, wParam, lparam);
end;