Python 子进程以管理员身份在新窗口中打开命令提示符并执行命令

问题描述 投票:0回答:0

我有以下代码,我试图以管理员身份在单独的窗口中打开命令提示符并想要执行命令。我正在尝试按照 tutorial 这里,但它说 FileNotFoundError: [WinError 2] 系统找不到终端中指定的文件。请帮助。

这是代码,我正在尝试。如果我只是运行这个命令

cmd.exe /K "EchoServer.exe -c -s"
它运行良好但不会以管理员身份运行。

import subprocess
from subprocess import Popen, CREATE_NEW_CONSOLE

def OpenServers():
    print("Full path "+echoServerFullPath)
    print(os.path.exists(echoServerFullPath))
    os.chdir(echoServerFullPath)
    command = ['cmd.exe /K "CoreServer.exe -c -s"', '/c', 'runas', '/user:administrator']
    #cmd.exe /K "EchoServer.exe -c -s"
    cmd1=subprocess.Popen(command,creationflags=CREATE_NEW_CONSOLE)

这是我得到的错误,

只是一个快速编辑,当我尝试

subprocess.Popen(['runas', '/user:Administrator', '"CoreServer.exe -c -s"'],creationflags=CREATE_NEW_CONSOLE)

它打开命令提示符并说输入管理员密码。

python subprocess command-prompt
© www.soinside.com 2019 - 2024. All rights reserved.