pyqt5打包后因Could not find QtWebEngineProcess.exe崩溃

问题描述:

程序中使用了QtWebEngineWidgets.QWebEngineView,使用pyinstall -c -p D:xxx\xxx xxx.py打包后,打包过程正常,但是程序运行后,在使用到QWebEngineView的时候,程序崩溃,控制台提示:Could not find QtWebEngineProcess.exe ,但是打开dist\xxx\pyqt5\Qt\bin 目录下明明有个程序文件,但是为何打包后的程序就是找不到呢?(源码运行是正常的)

处理方案

百度了各种解决办法:大致就是三种,
1、卸载pyqt5最新版(我当前是5.14版)降低版本 如:
pip uninstall pyqt5 卸载; pip install pyqt5==5.10 重装
2、单独安装 PyQtWebEngine
pip install PyQtWebEngine
3、把PyQtWebEngine添加环境变量
添加环境变量的过程不复述

经历的坑:

按上述三种办法均尝试过,都未解决,但是网上的这几种说法目前也都已有问题,
比如重装 pyqt5==5.10 和安装 PyQtWebEngine ,他们的博客已经发了很久了,直接复制操作已经不可以了,比如安装PyQtWebEngine也要指定版本,现在的版本是5.14,如果没有指定版本之间安装,那么之前安装的 pyqt5=5.10 会自动升级的最新版,因此在重装的时候,两个模块都要指定版本,并且是相匹配的版本,否则会导致更新到最新版。目前 PyQtWebEngine 官方网页提供的最新版已经是5.12了,所以pyqt5最低也要装5.12,否则会自动升级到5.14
最后指定环境变量,仍然无效。
此外,我尝试在代码中把使用 QtWebEngineWidgets.QWebEngineView 的代码段加上
try:
xxxx
QtWebEngineWidgets.QWebEngineView 的全部代码
xxx
except Exception as err:
print(err)
link = “http://***.***.*.:
QtGui.QDesktopServices.openUrl(QtCore.QUrl(link))
不幸的是仍然无效,按理说加了try后不应该再导致程序因为报错崩溃,但实际结果还是程序崩溃!

目前结果:

仍未解决,目前无解。求大神有没有其他解决方案,不胜感激!

你可能感兴趣的:(pyqt5的坑)