Wie kann ich eine UAC-Erhöhung für mein Python-Skript anfordern?

Patricia Arquette
Freigeben: 2024-11-24 10:42:11
Original
830 Leute haben es durchsucht

How Can I Request UAC Elevation for My Python Script?

Anfordern einer UAC-Erhöhung in einem Python-Skript

Beim Ausführen von Python-Skripten, die Administratorrechte erfordern, ist es notwendig, die Benutzerkontensteuerung (User Account Control, UAC) zu handhaben. um die erforderlichen Berechtigungen zu erhalten. So geht's:

Methode:

Python 2.x:

import ctypes, sys

def is_admin():
    try:
        return ctypes.windll.shell32.IsUserAnAdmin()
    except:
        return False

if is_admin():
    # Code of your program here
else:
    # Re-run the program with admin rights
    ctypes.windll.shell32.ShellExecuteW(None, u"runas", unicode(sys.executable), unicode(" ".join(sys.argv)), None, 1)
Nach dem Login kopieren

Ersetzen Sie für Python 3.x die letzte Zeile mit:

ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, " ".join(sys.argv), None, 1)
Nach dem Login kopieren

Vorteile:

  • Keine externen Bibliotheken erforderlich (verwendet ctypes und sys aus der Standardbibliothek)
  • Funktioniert auf beiden Python 2 und Python 3
  • Keine Änderungen an Dateiressourcen oder Manifestdateien erforderlich
  • Verhindert unnötige Codeausführung, indem nicht innerhalb des if/else-Blocks ausgeführt wird
  • Ermöglicht das Abrufen des Rückgabewerts des API-Aufrufs, um Maßnahmen zu ergreifen, wenn er fehlschlägt

Das obige ist der detaillierte Inhalt vonWie kann ich eine UAC-Erhöhung für mein Python-Skript anfordern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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