Wie wäre es mit runasuser als Verb?
WTF? Darauf wäre ich nie gekommen! Liegt wohl daran, dass die Dokumentation von MS so überaus vollständig ist
... In der Doku Datenstruktur
SHELLEXECUTEINFO ist selbst das seit Win2k funktionierende Verb runas nicht zu finden
.
Zitat:
(Wusste ich auch nicht, habs grad kurz ausprobiert und ging.
)
In der Tat funktioniert das. Danke! Es hat aber einen dicken Nebeneffekt, der es für den Anwendungszweck unbrauchbar macht: die Funktion ShellExecuteEx kommt sofort zurück im Gegensatz zum Verb runas. Beendet man das Programm danach, ist natürlich auch der Dialog weg... Ich habe folgende Flags probiert: SEE_MASK_NOASYNC, SEE_MASK_WAITFORINPUTIDLE und SEE_MASK_NOCLOSEPROCESS. Keiner davon hilft, die Funktion am Rückkehren zu hindern. Ideen?
Zitat von
Popov:
Ich hab mal vor einiger Zeit darüber in About.com Delphi gelesen. Habe mal kurz deren Suche bemüht, vielleicht hilft es:
Ein Manifest hat mein Programm bereits mit einem requestedExecutionLevel von "asInvoker", weil es sonst immer die
UAC auslöst, wie man in
diesem Thema nachlesen kann. Ich möchte aber nur bei Bedarf umschalten und dazu den Nutzer vorher befragen (ohne selbst einen Dialog zu schreiben).
MfG Dalai