Python子进程调用问题

2024-05-29 05:25:30 发布

您现在位置:Python中文网/ 问答频道 /正文

如何通过子进程调用以管理员权限运行子进程? 示例:

subprocess.call(["C:\\WINDOWS\\system32\\WindowsPowerShell\\v1.0\\powershell.exe","Get-HotFix"])

我试过runASuser:Administrator什么都没有。。。。你知道吗

我需要这个命令来使用cmd和python的管理员权限执行以下命令。有人知道怎么做吗?你知道吗

sc config vss start=auto

我想

subprocess.call((["runAS","user:Administrator","C\Windows\system32\cmd.exe","sc config vss start=auto"]))

但这行不通。你知道吗


Tags: 命令cmdconfig权限进程管理员vsscall
1条回答
网友
1楼 · 发布于 2024-05-29 05:25:30

使python代码调用Windows管理员权限

from __future__ import print_function
import ctypes, sys

def is_admin():
    try:
        return ctypes.windll.shell32.IsUserAnAdmin()
    except:
        return False
if is_admin():
    # The code to run is added here
else:
    if sys.version_info[0] == 3:
        ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1)
    else:#in python2.x
        ctypes.windll.shell32.ShellExecuteW(None, u"runas", unicode(sys.executable), unicode(__file__), None, 1)

如果您在非管理员权限下运行它,那么您已经运行了两次代码,第一次运行时您没有管理员权限,第二次运行时您有管理员权限。你知道吗

您可以参考以下文章: https://blog.csdn.net/qq_17550379/article/details/79006655

相关问题 更多 >

    热门问题