.exe文件打开闪退

在尝试运行打包后的exe文件时遇到闪退问题,原因是系统无法找到Qt5Core.dll。通过在cmd中运行exe捕获到错误信息。解决方案包括:一是在程序中手动设置系统变量,导入pyqt5库前修改PATH;二是将Qt5Core.dll文件复制到指定的bin目录下。这两种方法都可以使打包后的exe正常运行。
摘要由CSDN通过智能技术生成
  • 问题描述:在某新的电脑上运行打包的exe文件时,出现闪退。
  • 问题分析:

打开一个cmd,cd到存放exe文件的目录,然后运行.****.exe文件,可以捕捉到提示的错误信息,如下图所示:

图1
可以看到是在运行时,根据指定的PATH找不到Qt5Core.dll文件导致的。
百度一下原因,网址如下:
https://blog.csdn.net/zwyact/article/details/99778898

  • 问题解决:

总的来说呢,就是有的版本pyqt5库对系统变量的加载存在bug,具体原因只有官方才能解释了,咱也没法管了。
对有bug的版本库提供一种办法就是,在主程序中pyqt5库import之前就对系统变量进行手动设置,import代码如下:
import sys, os
if hasattr(sys, ‘frozen’):
os.environ[‘PATH’] = sys._MEIPASS + “;” + os.environ[‘PATH’]
from PyQt5 import QtCore, QtWidgets, QtGui
from PyQt5.QtWidgets import *
from untitled import Ui_MainWindow
from PyQt5.QtGui import *
这样打包之后exe就能完美运行了。
另一种方法就是,找到并拷贝Qt5Core.dll文件到指定bin目录下,即可。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值