Heim > Backend-Entwicklung > C++ > Wie kann ich programmgesteuert die Prozessberechtigungen in Windows erhöhen?

Wie kann ich programmgesteuert die Prozessberechtigungen in Windows erhöhen?

Barbara Streisand
Freigeben: 2025-01-31 09:56:15
Original
315 Leute haben es durchsucht

How Can I Programmatically Elevate Process Privileges in Windows?

programmgesteuert die Prozessberechtigungen in Windows

erheben

In diesem Handbuch wird erläutert, wie programmgesteuert die Prozessberechtigungen in Windows erhöht werden, ein notwendiger Schritt bei der Ausführung privilegierter Aufgaben wie der Installation von Diensten mit InstallUtil.exe. Wir werden zwei Methoden untersuchen: Verwenden des runas Verb und ein Anwendungsmanifest.

Die einfachste Methode besteht darin, die Eigenschaft Verb des ProcessStartInfo -Objekts zu verwenden. Das Einstellen von Verb in "Runas" fordert das Dialogfeld "Benutzerkontosteuerung) auf und fordert die Benutzerberechtigung auf, den Prozess zu erhöhen. Dies ähnelt der rechten Maustaste auf eine ausführbare Datei und die Auswahl "Ausführen als Administrator".

Wenn Sie jedoch wiederholte UAC-Eingaben vermeiden möchten, insbesondere bei langjährigen Prozessen, können Sie den gesamten Hostprozess erhöhen. Dies wird erreicht, indem eine Anwendungsmanifestdatei (ein UAC -Manifest) erstellt und einbezogen wird, das die Ausführungsstufe highestAvailable angibt. Die UAC -Eingabeaufforderung wird nur einmal beim Anwendungsstart angezeigt, und alle nachfolgenden Kinderprozesse erben diese erhöhten Berechtigungen.

Hier erfahren Sie, wie Sie das runas Verb:

erheben können
ProcessStartInfo startInfo = new ProcessStartInfo(m_strInstallUtil, strExePath);
startInfo.UseShellExecute = true;
startInfo.Verb = "runas";
System.Diagnostics.Process.Start(startInfo);
Nach dem Login kopieren

Einstellung UseShellExecute zu true und Verb zu "runas" sorgt dafür, dass der Prozess mit erhöhten Berechtigungen ausgeführt wird, vorbehaltlich der UAC -Genehmigung. Die Alternative mit einem Anwendungsmanifest erfordert mehr Einrichtung, vermeidet jedoch wiederholte UAC -Wechselwirkungen.

Das obige ist der detaillierte Inhalt vonWie kann ich programmgesteuert die Prozessberechtigungen in Windows erhöhen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage