Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 36267|Antwort: 3

[WinForm] C#-Programme laufen mit Administratorrechten

[Link kopieren]
Veröffentlicht am 09.10.2016 09:14:38 | | | |
In Vista und Windows 7 und später wurde ein Sicherheitsmechanismus namens UAC (User Account Control) hinzugefügt, und wenn UAC aktiviert ist, können die Benutzer, selbst wenn sich der Benutzer mit Administratorrechten anmeldet, seine Anwendungen nicht in das Systemverzeichnis, die Systemregistrierung und andere Einstellungen schreiben, die standardmäßig den normalen Betrieb des Systems beeinflussen könnten. Dieser Mechanismus erhöht die Sicherheit des Systems erheblich, aber für Anwendungsentwickler können wir die Nutzer nicht zwingen, UAC auszuschalten, aber manchmal muss die von uns entwickelte Anwendung im Weg eines Administrators laufen – wie erreicht man eine solche Funktion?
So implementiert ein C#-Programm die Aufforderung, den Benutzer mit Administratorrechten auszuführen.
In diesem Beispiel zeigt das WinForm-Programm, dass ein neues Projekt generiert und entsprechend angepasst wird:
Methode 1: Start über System.Diagnostics.Process.Start():
Implementierungsmethode: Die standardmäßig generierte Programmdatei modifizieren, und der modifizierte Code ist wie folgt:
Da der Code bereits kommentiert wurde, wird er nicht ins Detail gehen;
Effekt: Da es durch das Aufrufen des externen Aufrufs von System.Diagnostics.Process.Start() gestartet wird, wird VS beim direkten Durchlaufen von VS nicht aufgefordert werden, Administratorrechte zu benötigen, sondern nur das Programm selbst benötigt Administratorrechte, was sich von dem Programm unterscheidet, das die Anwendung generiert. Dies ist der Hauptunterschied zur Umsetzung der Methode 2.
Methode 2: Durch Hinzufügen einer Anwendungsmanifestdatei:
Unter Projekt Neues Element hinzufügen wählen Sie Application Manifest File und klicken Sie auf die Schaltfläche Hinzufügen
Nach dem Hinzufügen wird die app.manifest-Datei standardmäßig geöffnet, was folgt:
Modifiziert zu:
Dann öffnen Sie die Projekteigenschaften und ändern Sie das Manifest in den Ressourcen im Reiter Applications auf das neue app.manifest.
Baue das Projekt neu auf, und wenn du das Programm erneut öffnest, wirst du aufgefordert, mit Administratorrechten auszuführen.
Beachten Sie, dass Sie, wenn Sie in VS mit dem Debuggen beginnen, darauf hinweisen, dass diese Aufgabe erhöhte Rechte für die Anwendung erfordert. Wie unten gezeigt:
Wähle Neustart mit anderen Zugangsdaten, um dies zu tun.
Methode 3: Ändern Sie die Eigenschaften der Programmdatei direkt
Rechtsklicke auf die Programmdatei im Reiter Kompatibilität im Dialogfeld Eigenschaften, der erscheint.
Haken Sie bei "Ausführen Sie dieses Programm als Administrator".







Vorhergehend:{"Element '_id' entspricht keinem Körper oder Eigenschaft der Klasse."}
Nächster:.NET/C# 4 Möglichkeiten, MongoDB-Abfragen und Fuzzy-Abfragen [mit Quellcode] zu implementieren
 Vermieter| Veröffentlicht am 09.10.2016 09:15:27 |
Bestimmen Sie, ob das Programm als Administrator ausgeführt wird
Namensräume müssen hinzugefügt werden:
mit System.Security.Principal;


 Vermieter| Veröffentlicht am 26.01.2021 09:59:52 |
C# bestimmt, ob ein Programm als Administrator ausgeführt wird
https://www.itsvse.com/thread-3004-1-1.html
 Vermieter| Veröffentlicht am 13.10.2025 09:18:33 |
.NET Core-Apps laufen als Administratoren auf Windows-Systemen, der Code lautet wie folgt:


Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com