python打包不能在其他电脑打开_PyInstaller打包EXE移植到别的电脑提示:VCRUNTIME140.dll 没有被指定在 Windows 上运行......

在用PyInstaller打包Python程序就已经上网了解过很多相关打包的软件,觉得PyInstaller还是比较靠谱的;于是乎就决定用PyInstaller了。

用了之后感觉还是不错的;但是就是遇到一个问题一直不解什么原因,在我电脑上编译好,在虚拟机上也测式OK(虚拟机用的是Win7_64旗舰版);折腾了很长一段时间,当初总觉得是别人的系统版本问题(在Win7_64家庭版上测试过,又在Win10_64专业版测试过);后面我又觉得可能是vc++运行库没装好,于是把vc++运行库(2005,2008,2010,2012,2013,2015)_x86_x64安装上去,问题依旧。。。上网也找了很久,无果。

如下图:

1.png

这次终于下定决心要找出原因来。。

原因有2点,这2点都是在vcruntime140.dll上,这里做个总结,不讲过程。

原因1:

编译成exe文件,vcruntime140.dll这个文件是从Python\Python3.6\vcruntime140.dll这里导入。从网上下载相同版本的vcruntime140.dll发现它们的文件大小不一至;

如图:

21.png

22.png

替换后使用Pyinstaller-DD:\py\hello.py --upx-dir upx391w(-D 创建一个目录,包含exe文件,但会依赖很多文件)编译,移植到别的电脑上正常运行。

原因2:

使用Pyinstaller-FD:\py\hello.py --upx-dir upx391w(-F 生成单个exe文件)移植到别的电脑上运行,又是相同的问题;根据错误信息所指,找到vcruntime140.dll查看,文件大小又不对了。

问题出在用参数 --upx-dir upx391w 进行了压缩。去掉后移植到别的电脑上正常运行;查看版本大小也正确。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值