Also, nochmals getestet, musste durch deinen Vorschlag die Form wieder auf Visible := True setzen. Wie es aussieht, muss der Focus auf der App sein - allerdings war es geplant, einen globalen Hook zu setzen.
//Edit: Heißt soviel wie: Jetzt klappts.
SetWindowsHookEx(WH_KEYBOARD, @KeyboardHookProc, HInstance, 0);
Der letzte Parameter, dwThreadId könnte somit das Problem sein. Die Doku bringt mich auch nicht weiter - laut Google ist 0 der richtige Wert für einen globalen Hook, oder irre ich mich?
//Edit 2: Ich hätte wohl gründlicher lesen sollen - globale Hooks müssen in
DLL's ausgelagert werden (Stichwort
IPC - danke Assarbad
)
Das Thema hat sich hiermit erledigt - danke shmia für die Hilfe