Wie kann ich erzwingen, dass meine .NET-Anwendung als Administrator ausgeführt wird?

Wie erzwinge ich nach der Installation meines Programms auf einem Client-Computer, dass mein Programm unter Windows 7 als Administrator ausgeführt wird?

Lösung

Sie müssen das Manifest ändern, das in das Programm eingebettet wird. Dies funktioniert mit Visual Studio 2008 und höher: Projekt + Neues Element hinzufügen, wählen Sie "Anwendungsmanifestdatei". Ändern Sie das Element `` in:

Der Benutzer erhält die UAC-Eingabeaufforderung, wenn er das Programm startet. Verwenden Sie sie mit Bedacht; ihre Geduld kann schnell erschöpft sein.

Kommentare (8)

Das Hinzufügen eines requestedExecutionLevel-Elements zu Ihrem Manifest ist nur die halbe Miete; Sie müssen bedenken, dass UAC ausgeschaltet werden kann. Wenn dies der Fall ist, müssen Sie die Prüfung auf die alte Art und Weise durchführen und einen Fehlerdialog anzeigen, wenn der Benutzer kein Administrator ist
(rufen Sie IsInRole(WindowsBuiltInRole.Administrator) für den CurrentPrincipal Ihres Threads auf).

Kommentare (7)

Sie können eine Manifestdatei in die EXE-Datei einbetten, die Windows (7 oder höher) veranlasst, das Programm immer als Administrator auszuführen.

Weitere Einzelheiten finden Sie in Schritt 6: Erstellen und Einbetten eines Anwendungsmanifests (UAC) (MSDN).

Kommentare (0)