Python子进程访问被拒绝
我正在尝试使用python脚本在后台静默地安装java。路径正确,并已通过isfile验证。我收到一个访问被拒绝的异常。我正在本地计算机上以管理员身份运行此程序Python子进程访问被拒绝,python,permissions,subprocess,installation,Python,Permissions,Subprocess,Installation,我正在尝试使用python脚本在后台静默地安装java。路径正确,并已通过isfile验证。我收到一个访问被拒绝的异常。我正在本地计算机上以管理员身份运行此程序 subprocess.Popen('C:\Users\xUser\jdk-8u45-windows-x64.exe /s ADDLOCAL="ToolsFeature,SourceFeature"'); 错误返回 WindowsError: [Error 5] Access is denied 你是在普通的终端上运行这个吗?在Win
subprocess.Popen('C:\Users\xUser\jdk-8u45-windows-x64.exe /s ADDLOCAL="ToolsFeature,SourceFeature"');
错误返回
WindowsError: [Error 5] Access is denied
你是在普通的终端上运行这个吗?在Windows中,您需要专门打开终端以获得管理权限:
Ctrl
+Shift
+Enter
。或者,导航到所有程序>附件>在命令提示符上单击鼠标右键,然后单击以管理员身份运行
subprocess.Popen(['jdk-8u45-windows-x64.exe','/s','ADDLOCAL=“ToolsFeature,SourceFeature”]”)
所以我实际上已经尝试过了。我已经可以作为管理员从命令行运行C:\Users\xUser\jdk-8u45-windows-x64.exe/s ADDLOCAL=“ToolsFeature,SourceFeature”。我只是在scriptCloser中看到了子流程的问题!现在只有这个问题了:assert os.path.isdir(install_dir)assertionError您是否在“C:\Users\xUser\”
之前包含了r
?WindowsError:[Error 740]请求的操作需要提升OK,因此现在您正在实际运行该文件。此错误表示您没有正确的特权/权限。因此,请确保您现在正在以管理员身份打开的命令提示符中运行此python脚本。不要认为这会导致错误,但可能值得在字符串前面加上r:r'C\Users\…,以便将其解释为原始字符串。相关:。确保导入getpass;打印(getpass.getuser())
打印期望值。
install_dir=r"C:\Users\xUser\"
assert os.path.isdir(install_dir)
os.chdir(install_dir)
subprocess.Popen('jdk-8u45-windows-x64.exe /s ADDLOCAL="ToolsFeature,SourceFeature"')