我可以使用默认权限运行openvpn:
FNULL = open(os.devnull, 'w')
args = 'E:\\OpenVPN\\bin\\openvpn-gui.exe --connect ' + server + '.udp.ovpn'
subprocess.Popen(args, stdout=FNULL, stderr=FNULL, shell=False)
如何更改此项以确保以管理员身份运行?
您可以使用runas
utility - 未经测试,引用可能需要一些工作:
FNULL = open(os.devnull, 'w')
command = 'E:\\OpenVPN\\bin\\openvpn-gui.exe --connect ' + server + '.udp.ovpn'
runas_command = 'runas /user:Administrator "%s"' % command
subprocess.Popen(runas_command, stdout=FNULL, stderr=FNULL, shell=False)
如果runas
不起作用,psexec
可能会。