运行基于webengine的应用程序时出现异常
异常1
运行程序后弹出错误对话框
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: windows.
检查了exe目录下已经存在platforms\qwindows.dll
进一步发现qwindows.dll是属于另一个版本的qt,因为电脑安装了qt5.9和qt5.12,编译程序用的是qt5.12,但qwindows.dll却是5.9的,导致上述错误。
另外,发布exe前先要提取依赖项,方法:qt发布自动获取依赖dll
异常2
运行程序后没反应,程序跑不起来,并在exe目录下生成了一个"debug.log"文件,文件内容如下:
[0323/183814.515:ERROR:icu_util.cc(177)] Invalid file descriptor to ICU data received.
将D:\Qt\Qt5.12.7\5.12.7\msvc2017_64\resources文件夹里的5个文件全部拷贝至exe目录里
icudtl.dat
qtwebengine_devtools_resources.pak
qtwebengine_resources.pak
qtwebengine_resources_100p.pak
qtwebengine_resources_200p.pak
windeployqt.exe帮我们打包好的是resources文件夹,跟exe放在同一个目录里,此处应该是qt 5.12.7的BUG