Ich befürchte, dass du die Taste abfängst, bevor sie das jeweilige Programm erreicht, aber mit folgendem könntest du das aktive Programm (Fenster) ermitteln:
Delphi-Quellcode:
var
tid: Cardinal;
hw: HWND;
begin
hw := GetForegroundWindow;
tid := GetWindowThreadProcessID(hw, nil);