Moin Spox,
wenn das Programm nicht startet, solltest Du mal den Inhalt von Pfad überprüfen.
Was das Minimieren Deines Programmes angeht: Ersetz mal Application.Handle durch self.Handle oder trag einfach eine 0 ein.
[EDIT]
Ausserdem könntest Du mal den Rückgabewert von ShellExecute prüfen.
Ist der > 32 war der Aufruf erfolgreich, ansonsten könnte Dir die Auflistung der möglichen Rückgabewerte hier (
ShellExecute) weiterhelfen.
[/EDIT]