WH_GETMESSAGE oder WH_CALLWNDPROC wären wohl beide sinnvoll. Und es sollte ein globaler Hook sein.
WH_CALLWNDPROC böte sich an, wenn du verhindern willst, daß die Nachricht an das entsprechende Fenster geschickt wird (erinnere dich, daß dein Hook im Kontext der anderen Anwendung läuft) und WH_CALLWNDPROCRET wenn du benachrichtigt werden willst sobald es im Vordergrund ist.
Außerdem dran denken daß du globale Hooks nur installieren kannst wenn deine
DLL ebenfalls 64bit ist, sollte das Zielprogramm 64bit sein. Siehe
SetWindowsHookEx.