PyInstaller打包exe时报PermissionError: [Errno 13]权限被拒绝求助
PyInstaller打包Errno 13 PermissionError解决方案
该报错触发原因为打包程序无法对目标路径下的main.exe文件执行写入操作,可按以下方案依次排查:
结束占用目标文件的进程
此前运行过的main.exe程序如果未完全退出,会占用文件导致无法覆写。打开任务管理器,终止所有名称为main.exe的进程后重新执行打包命令即可。清空旧打包缓存与输出文件
手动删除项目目录下的build文件夹、dist文件夹和main.spec文件,排除旧文件残留占用或权限继承问题后再重新打包。以管理员权限运行终端
右键点击当前使用的终端(命令提示符/PowerShell/IDE内置终端),选择以管理员身份运行,切换到项目目录后再次执行打包命令。更换打包输出路径
部分系统会对桌面、系统盘路径的写入做额外权限限制,可通过命令参数指定输出到其他无权限限制的路径,示例命令:pyinstaller --onefile -w --distpath D:\py_pack_output main.py临时关闭安全软件实时防护
杀毒软件、Windows Defender实时防护会拦截陌生程序对exe文件的写入操作,临时关闭相关功能后再尝试打包,打包完成后恢复防护即可。检查项目文件夹读写权限
右键点击项目所在文件夹,选择「属性」-「安全」,确认当前用户账户对该文件夹拥有「写入」「修改」权限,如无对应权限手动勾选后保存即可。
内容的提问来源于stack exchange,提问作者DragonYT
相关产品推荐
相关产品推荐

