Dennis,
And what is the problem to develop the app?
Just use CreateProcess API and specify wShowWindow=SW_SHOWMINIMIZED of passed STARTUPINFO structure (make sure dwFlags includes
STARTF_USESHOWWINDOW bit set).
Or use ShellExecute[Ex] (..., SW_SHOWMAXIMIZED) call.
It may appear that not all apps process the "show window" startup info, so you may need to do some tweak per app specific (e.g.,
find the launched app main window with FindWindow API and minimized/hide it manually with a ShowWindow call).