


Comment exécuter des scripts Python avec des privilèges élevés sous Windows ?
Nov 30, 2024 am 03:21 AMExécuter des scripts Python avec des privilèges élevés sous Windows
L'élévation des privilèges pour les scripts peut être essentielle pour effectuer des tâches administratives dans les applications Python. Cet article fournit des conseils complets pour y parvenir sur les systèmes Windows.
Approche originale avec erreur d'importation
L'exemple de code mentionné dans la question tente d'élever les privilèges à l'aide de win32com. module coque. Cependant, son exécution peut échouer en raison d'une dépendance manquante sur pypiwin32. Pour résoudre ce problème, assurez-vous que la bibliothèque pypiwin32 est installée avant d'exécuter le code.
Script Python UAC de Preston Landers
Pour une solution plus robuste, envisagez d'utiliser le script Python développé par Preston Landers. Ce script offre une approche simple pour vérifier si l'utilisateur dispose des privilèges d'administrateur et les élever si nécessaire.
Utilisation :
- Installez le module d'administration à l'aide de pip install admin.
- Incluez le code suivant dans votre script :
import admin if not admin.isUserAdmin(): admin.runAsAdmin()
Avantages du script de Landers :
- Fournit une vérification explicite des privilèges d'administrateur.
- Lance le script avec des privilèges élevés si nécessaire.
- Affiche le processus d'élévation dans des fenêtres séparées pour visibilité.
Approche avancée pour exécuter en tant qu'administrateur
Pour une approche plus avancée, vous pouvez utiliser la fonction runAsAdmin définie dans le script de Landers. Cette fonction vous permet d'exécuter n'importe quelle ligne de commande en utilisant des privilèges élevés.
Exemple :
import admin admin.runAsAdmin(["c:\Windows\notepad.exe"])
Cela lancera le Bloc-notes avec des autorisations d'administrateur.
Considérations supplémentaires
- Pour les scripts nécessitant des arguments de ligne de commande, transmettez sous forme de tuple ou de liste dans cmdLine dans la fonction runAsAdmin.
- Le script élevé aura un ID de processus différent de celui du script d'origine.
- Cette méthode n'élève pas automatiquement l'intégralité de la session Python.
En suivant ces méthodes, vous pouvez exécuter efficacement des scripts Python avec des privilèges élevés et effectuer des tâches administratives sous Windows.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Comment utiliser la belle soupe pour analyser HTML?

Comment utiliser Python pour trouver la distribution ZIPF d'un fichier texte

Comment travailler avec des documents PDF à l'aide de Python

Comment se cacher en utilisant Redis dans les applications Django

Comment effectuer l'apprentissage en profondeur avec TensorFlow ou Pytorch?

Sérialisation et désérialisation des objets Python: partie 1

Comment implémenter votre propre structure de données dans Python
