Einzelnen Beitrag anzeigen

Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#4

AW: RunAs unter Win7 (ohne UAC)

  Alt 15. Mär 2012, 23:14
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

Geändert von Dalai (16. Mär 2012 um 00:10 Uhr) Grund: Linktext von ShellExecuteEx auf SHELLEXECUTEINFO geändert
  Mit Zitat antworten Zitat