Ich habe mal in die Doku gesehen - es ist noch einfacher als ich dachte:
Delphi-Quellcode:
// ...
WM_KEYDOWN: //Is A Key Being Held Down?
begin
keys[wParam] := not Odd(lParam shr 30); //If So, Mark It As True
result:=0;
end;
// ...
Bit 30 von lparam signalisiert den vorherigen Zustand der Taste - 1 = down 0 = up.
Freundliche Grüße