Vista "run as Administrator"
-
Ich habe nur Windows XP installiert,
aber einige Benutzer meiner Programme beklagten sich, dass
mein Programm nicht richtig läuft, wenn es nicht als Administrator
ausgeführt wird.Wie überprüfe ich, ob das Programm unter Vista als Administrator läuft,
um gegebenfalls einen Fehler auszugeben, dass man das Programm als Admin
starten muss.mfG
-
Du musst nur Dein Programm mit einem Vista-Manifest versehen und darin das "requireAdministrator" angeben.
Oder besser natürlich:
Schreibe Dein Programm so, dass es keine Admin-Rechte braucht und gebe ihm ein Vista-Manifest mit, welches nur "asInvoker" benötigt. Sonst kommt immer der UAC-Dialog, wenn es als Admin ausgeführt werden soll...Siehe auch:
http://www.gregcons.com/KateBlog/AddingAManifestToAVistaApplication.aspxAB VS2008 kann man diese Einstellungen im Projekt vornehmen und muss es nicht mehr von Hand machen...
PS: Wenn Du kein Manifest hast, greift bei Deiner Anwendung auch die "Virtualisierung", was oft zu mehr Problemen führt...
Also: Auf jeden Fall ein Manifest Deiner Anwenundung hinzufügen!!! Am besten nur mit "asInvoker"...
-
Auch recht interessant:
http://www.microsoft.com/technet/prodtechnol/windows/appcompatibility/appverifier.mspx
-
AppVerifyer ist gut um "Fehler" rauszufinden... aber ein Manifest musst er trotzdem hinzufügen, wenn es einigermassen unter Vista laufen soll...
-
Ok, vielen Dank
-
http://blog.m-ri.de/index.php/2006/12/12/vista-und-die-notwendigkeit-eines-manifestes-fur-die-uac/
http://blog.m-ri.de/index.php/2007/02/15/uac-trustinfo-manifest-in-ein-vc-2005-sp1-projekt-einfugen/
http://blog.m-ri.de/index.php/2007/03/15/ermitteln-ob-ein-prozess-als-administrator-lauft-oder-nicht/und anderes mehr...