Erhöhung von Administratorrechten in C-Anwendungen zur Laufzeit
Die Möglichkeit, zur Laufzeit Administratorrechte vom Betriebssystem anzufordern, ist mit Sicherheit eine wünschenswerte Funktion Anwendungen. In Windows ist diese Funktion über verschiedene Mechanismen verfügbar.
Erhöhung zur Kompilierungszeit
Wie in der Frage erwähnt, können einer Anwendung während der Kompilierung Administratorrechte gewährt werden indem Sie das Manifest der Anwendung auf „requireAdministrator“ setzen. Wenn jedoch zur Laufzeit eine Erhöhung erforderlich ist, sind andere Ansätze erforderlich.
Laufzeiterhöhung
Um die Berechtigungen einer vorhandenen Anwendung zur Laufzeit zu erhöhen, gibt es mehrere Optionen :
Extern Manifest
Ähnlich wie bei der Erhöhung zur Kompilierungszeit kann ein externes Manifest erstellt und mit der ausführbaren Datei der Anwendung verknüpft werden. Dieses Manifest kann festlegen, dass „requestedExecutionLevel“ „requireAdministrator“ ist.
RunAs-Verb
Durch die Verwendung des Verbs „runas“ in der ShellExecute-Funktion ist dies möglich Starten Sie einen Prozess mit erhöhten Berechtigungen. Mit dieser Option kann der Benutzer zur Eingabe von Administratoranmeldeinformationen aufgefordert werden, bevor der Prozess ausgeführt wird.
Speziell für die aktuelle Instanz
Wenn das Ziel darin besteht, die Berechtigungen der aktuellen Instanz zu erhöhen Instanz der Anwendung, ohne dass erhaltene Daten im Speicher verloren gehen, ist es möglich, mit der Windows-Funktion „CreateSymbolicLinkW“ einen symbolischen Link zum Administrator zu erstellen ausführbare Datei des Kontos. Bei dieser Technik wird ein symbolischer Link mit demselben Namen wie die laufende Anwendung erstellt und auf die erhöhte Version der ausführbaren Datei verwiesen. Die erhöhte Version kann dann ausgeführt werden und übernimmt den Speicher und die Ressourcen der ursprünglichen Anwendung.
Das obige ist der detaillierte Inhalt vonWie kann ich die Administratorrechte für meine C-Anwendung zur Laufzeit erhöhen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!