Hier noch 2 Antworten aus den Google-PAQs:
Zitat:
There is no really reliable way to do that in
Win32. What you can try is
wnd:= GetWindow( yourform.handle, GW_HWNDNEXT );
It will return the window beneath yours in the Z order. That may or may not be
the last active window (usually it will be).
(P. Below)
Zitat:
I've tried to track the active windows using hooks, but was not really
successfull up to now.
WH_SHELL - seemed to be the most promising, but did not work as documented
WH_SHELL using Shell32's ShellHookProc as the Hook Proc (undocumented),
worked once, never again
WH_CBT - NT hang after installing the system-wide hook, I must be doing
something wrong
WH_CALLWNDPROC + WH_GETMESSAGE and then tracking WM_ACTIVATEAPP - got way
to many notifications
(Alex Hekstra)