O fonte abaixo verifica se o programa está sendo executado com privilégios de administrador e não é dependente de sistemas operacionais…. mas não funciona com com Windows XP. 🙁
import ctypes, os def is_admin(): try: is_admin = (os.getuid() == 0) except AttributeError: is_admin = ctypes.windll.shell32.IsUserAnAdmin() != 0 return is_admin
O código acima tenta verificar se está sendo executado como administrador em um ambiente Unix. Se ocorrer uma exceção como, por exemplo, o sistema operacional não conseguir identificar uma variável Unix, a função tenta verificar no ambiente windows.
No final, ele retorna true ou false, dependendo do resultado.
Como utilizar:
if isAdmin(): print("É administrador!") else: print("Mero mortal!")
Referência:
The following two tabs change content below.
Arquiteto de Software e Desenvolvedor Backend (quase Fullstack), geralmente trabalho com C#, PowerShell, Python, Golang, bash e Unity (esse é mais por hobby). Estou sempre buscando algo novo para aprender, adicionando novas ferramentas ao meu cinto de utilidades.
Latest posts by Breno RdV (see all)
- O que é Metaclass e como ela funciona. (#python #dev #metaclass) - janeiro 11, 2023
- Entenda a mágica dos Generators. (#python, #dev, #generator, #iterator) - dezembro 28, 2022
- Ordenando um DataFrame por múltiplas colunas. (#python #pandas #jupyter #dev #data) - agosto 3, 2022