pyinstaller 打包成exe出现的问题+解决办法

问题:exe文件运行无反应

  • 首先查看自己打包时候用的参数,如果码中没有tkinter之类的GUI窗口的话就不要用 -w 了
    同时查看一下码里面有没有标准化输入输出,例如print,如果有就不要用 -w
    因为 -w 参数的意思是关掉控制台dos窗口,本来要显示的东西就只能显示在dos上,所以自然什都没有

解决方案

  • pyinstaller -F xxx.py

问题:提示failed to execute script xxx

  • 这个问题我遇到的时候是用tkinter在写一个小程序,生成exe点开之后就出现了failed to execute script xxx的问题,如下图
    图片描述

解决方案

 重新打包,在打包的时候加入了参数 -c
图片描述
加入参数-c后重新打包再次运行exe
图片描述

-c的作用是返回错误信息!错误信息如上图所示,没有找到‘bg.jpg’!
这个文件是我用作tkinter窗口背景的一张资源。
这张图片是直接放在py文件的同一目录下的,直接打开py文件运行没有问题
而生成exe后运行却提示failed to execute scrip...
问题就出在这里!打包后的exe生成在dist文件夹中,exe不在与资源文件在同一目录,将‘bg.jpg’ copy到 与exe文件同一目录下以后问题解决。由此知道,pyinstaller打包并没有将调用到的资源文件打包在exe文件中,所以exe没有办法再用到该资源。解决办法是将资源和exe文件放到同一目录或者将源码中用到的资源路径改成绝对路径。

问题:打包的时候出现了很多warning:lib not found...dll

  • 原因是pyinstaller 没有办法识别到这些dll

解决方案

解决办法是中copy warning中一些dll文件的名字,再电脑中搜索到他们的路径!
我搜索到的路径:C:UsersASUSAppDataRoamingpyinstallerbincache00_py36_64bit

该路径下面就是那一大堆warning的dll文件,这个路径添加到环境变量里面
方法如下
右键 此电脑——属性——高级——环境变量——用户变量中Path编辑新建然后填入刚刚dll所在的路径
然后问题就解决了

以上是我用pyinstaller时遇到的一些问题和解决办法,有不正确的地方欢迎指正,有问题也欢迎大家提出交流~

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值