2014-12-05 24 views
1

我试图以不同的用户身份从python脚本运行exe文件。我尝试使用Subprocess,使用“runas”cmd它无法从communicate("password")或从标准输入接收密码。下面是为子代码试过部分,如何使用python脚本以不同的用户身份运行应用程序(.exe)

这样的:

p = subprocess.Popen("runas /user:.\\admin cmd.exe").communicate("abc12346") 

这:

p1 = subprocess.Popen("echo abc123456",shell=True,stdout=subprocess.PIPE) 
p2 = subprocess.Popen("runas /user:.\\admin cmd.exe",shell=True,stdin=p1.stdout).communicate() 

两者都给人错误,错误

Enter the password for MyPC\admin: 
Attempting to start cmd.exe as user "MyPC\admin" ... 
RUNAS ERROR: Unable to run - cmd.exe 
1326: Logon failure: unknown user name or bad password. 

注:密码我已经给出的是正确的。

请让我知道如何运行它作为不同的用户使用python脚本。 注意:用户可能来自任何组或本地用户。

+0

看到这个:http://superuser.com/questions/615654/run-exe-file-via-python-as-administrator – runDOSrun 2014-12-05 13:00:22

回答

-1

你有没有试过通过命令行传递密码?如果密码为空,您可以将“'作为密码。

subprocess.call(['runas', '/user:Administrator', 'ADMIN_PASS','cmd.exe']) 
+0

是尝试,这也不能工作。这是使用“runas”命令的错误格式。 – 2014-12-08 04:46:37

相关问题