кажется, что он может написать проход как str, а не как объекты, похожие на байты ..
далось получить cmd, открываемый python. Однако при использовании runas администратор должен проверить пароль перед выполнением cmd.exe.
Я использую это, чтобы открыть CMD ...
import subprocess
subprocess.call(["runas", "/user:Administrator", "cmd.exe"])
Я ищу способ автоматического ввода пароля в приглашение runas.exe, которое открывается при запуске кода. Скажи, если бы я должен был создатьvar = "test"
и добавить его послеimport subprocess
Как сделать так, чтобы эта переменная передавалась и рассматривалась как вход в runas.exe?
Решение потребует только модулей Python версии 3.4 или выше.
ОбновитьЯ нашел некоторый код, который появляется для ввода прямо в runas.exe. Тем не менее, очевидный вклад\x00\r\n
когда в коде вход должен бытьtest
Я совершенно уверен, что если я смогу получитьtest
тогда код будет успешным.
Код выглядит следующим образом:
import subprocess
args = ['runas', '/user:Administrator', 'cmd.exe']
proc = subprocess.Popen(args,
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
proc.stdin.write(b'test\n')
proc.stdin.flush()
stdout, stderr = proc.communicate()
print (stdout)
print (stderr)