Welches Betriebssystem?
Ab Vista macht
UAC vor, wie es gehen
könnte (wobei die
API-Funktionen seit Win2000 vorhanden sein sollten) - alternativen Desktop anlegen und bei Prozessstart vor UI-Initialisierung den UI-Thread dahin auswandern lassen.
UAC schaltet dazu consent.exe dazu und wertet wohl dessen Rückgabewert aus. Da afaik eine bereits angezeigte Anwendung nicht den Desktop wechseln kann, bräuchtest Du auch einen Helfer-Prozess dafür.
Stichworte:
CreateDesktop,
SetThreadDesktop,
SwitchDektop. Für's Debuggen sicherstellen, dass der Wechsel auf den Originaldesktop immer irgendwie noch erfolgen kann, sonst wird's ungemütlich