[嗨,python脚本在Windows 10计算机上以弱特权运行。
我如何在python中使用高程以管理员身份运行,而无需创建单独的进程/窗口?
这是我到目前为止所拥有的:
import ctypes, sys
def is_admin():
try:
return ctypes.windll.shell32.IsUserAnAdmin()
except:
return False
if is_admin():
print(ctypes.windll.shell32.IsUserAnAdmin())
print("hi im admin")
input("[ENTER]")
else:
print(ctypes.windll.shell32.IsUserAnAdmin())
print("Low priv user, elevating")
ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1)
因此您看到我们使用ctypes.windll.shell32.IsUserAnAdmin()
检查是否为admin,然后使用ShellExecuteW
使用“ runas”并以管理员身份运行。可以,但是会打开一个不同的窗口。
如何在用户开始运行的同一窗口内提升?
启动新窗口后关闭旧窗口:)