"WaitForInputIdle" hab ich ja schon versucht, siehe Kommentar, aber das kommt sofort zurück.
Die grundsätzliche Idee die hinter der Verwendung von ShellExecuteEx steckt ist ja, über das Processhandle auf das WindowHandle zu kommen. Aber wie? Da fehlt mir leider das Basiswissen.
Na ja, wenn es nicht geht, auch nicht schlimm. Ist kein Pflichtprojekt