Ich finde es auf die Schnelle nicht wieder, aber IIRC gab es im Bezug auf die Rechte einen Unterschied, ob man ShellExecute oder CreateProcess benutzt.
Bei CreateProcess wurden die Rechte (immer?) vererbt. Bei ShellExecute nicht (hier wird die Shell beauftragt den Prozess zu starten).
Jedenfalls war ich bisher immer Felsenfest davon überzeugt das es so ist.
Windows Vista - Eine neue Erfahrung in Fehlern.