我有两个程序,这两个程序都是必须以管理员身份执行的安装程序。我正在尝试编写一个将运行这两个程序的python脚本。我想我可以在这两个程序上调用子进程,但这不起作用。
import subprocess
subprocess.call(['runas', '/user:Administrator','Program1'])
subprocess.call(['runas', '/user:Administrator','Program2'])
这是我通过互联网上的一点点搜索得出的代码,但这实际上并没有运行任何一个程序。当我运行这个时会发生什么是A终端弹出,你必须输入管理员密码,但之后没有任何反应。我认为问题可能与将这些问题一个接一个地调用有关。任何帮助表示赞赏。
谢谢!
答案 0 :(得分:0)
您可以尝试以下
import subprocess as Popen
import subprocess as sp
prog = sp.Popen(['runas', '/noprofile', '/user:Administrator', 'NeedsAdminPrivilege.exe'],stdin=sp.PIPE)
prog.stdin.write('password') #in case if u need to write password
prog.communicate()
供进一步参考https://technet.microsoft.com/en-us/library/cc771525.aspx