1

尝试在特定用户模式下运行某些 Windows 应用程序。通过命令后,它会要求输入密码。所以使用 proc.communicate() 传递密码但它不起作用,请帮助

from subprocess import Popen, PIPE
import time
cmd = "runas /user:administrator notepad.exe"
proc = Popen(cmd, stdout=PIPE, stdin=PIPE, stderr=PIPE)
print proc.stdout.read()
proc.communicate('password')
4

1 回答 1

0

您愿意改用 Pexpect 吗?如果是,您可以使用以下内容:

import pexpect
cmd = "runas /user:administrator notepad.exe"
child_process = pexpect.spawn(cmd)
child_process.expect('assword')
child_process.sendline(password)
于 2016-11-28T18:50:54.957 回答