首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >已部署的Qt应用程序QtWebEngineProcess无法加载Qt5Core.dll

已部署的Qt应用程序QtWebEngineProcess无法加载Qt5Core.dll
EN

Stack Overflow用户
提问于 2020-03-06 19:09:08
回答 3查看 3K关注 0票数 3

我需要帮助才能正确地将QT5.14.1 x64应用程序部署到客户端的Windows10PC上。应用程序使用QtWebEngineProcess在一个选项卡式界面窗口中显示谷歌地图。

在VisualStudio2019(目前的最新版本为16.4.5)或QT的版本从以前的版本更新之前,它过去都很好--我认为使用的版本是5.13.2。我不知道是哪种变化导致了错误。

问题是当应用程序在客户端的PC上启动时(没有Visual或Qt)。当我双击应用程序时,它停了几秒钟,最后弹出一个对话框,表示它找不到Qt5Core.dll。(它与应用程序位于同一个文件夹中),此后不久,它显示了另一个带有错误代码0xc0000022的对话框。

它们与从我的主应用程序可执行文件(app739.exe)实例化的子进程(QtWebEngineProcess.exe)相关联。

将工作(以前)版本与当前工作版本进行比较,我注意到VCRUNTIME140_1.dll上存在一个新的DLL依赖项。这似乎与异常处理有关,但是QtWebEngineProcess.exe没有将这个dll作为依赖项列出。

应用程序的部署如下:

代码语言:javascript
运行
复制
F:\Common\coffey\CoPilotTesterV23.0\app739.exe 64 bit, release executable
Adding Qt5Svg for qsvgicon.dll
Skipping plugin qmldbg_debugger.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_inspector.dll due to disabled dependencies (Qt5Qml Qt5Quick).
Skipping plugin qmldbg_local.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_messages.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_native.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_nativedebugger.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_preview.dll due to disabled dependencies (Qt5Qml Qt5Quick).
Skipping plugin qmldbg_profiler.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_quickprofiler.dll due to disabled dependencies (Qt5Qml Qt5Quick).
Skipping plugin qmldbg_server.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_tcp.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qsgd3d12backend.dll due to disabled dependencies (Qt5Qml Qt5Quick).
Direct dependencies: Qt5Core Qt5Gui Qt5SerialPort Qt5Widgets Qt5WebEngineWidgets Qt5WebChannel
All dependencies   : Qt5Core Qt5Gui Qt5Network Qt5Positioning Qt5PrintSupport Qt5Qml Qt5Quick Qt5QuickWidgets Qt5SerialPort Qt5Widgets Qt5WebEngineCore Qt5WebEngineWidgets Qt5WebChannel
To be deployed     : Qt5Core Qt5Gui Qt5Network Qt5Positioning Qt5PrintSupport Qt5Qml Qt5Quick Qt5QuickWidgets Qt5SerialPort Qt5Svg Qt5Widgets Qt5WebEngineCore Qt5WebEngineWidgets Qt5WebChannel
Qt5QmlModels.dll is up to date.
Qt5Core.dll is up to date.
Qt5Gui.dll is up to date.
Qt5Network.dll is up to date.
Qt5Positioning.dll is up to date.
Qt5PrintSupport.dll is up to date.
Qt5Qml.dll is up to date.
Qt5Quick.dll is up to date.
Qt5QuickWidgets.dll is up to date.
Qt5SerialPort.dll is up to date.
Qt5Svg.dll is up to date.
Qt5Widgets.dll is up to date.
Qt5WebEngineCore.dll is up to date.
Qt5WebEngineWidgets.dll is up to date.
Qt5WebChannel.dll is up to date.
libGLESV2.dll is up to date.
libEGL.dll is up to date.
d3dcompiler_47.dll is up to date.
opengl32sw.dll is up to date.
qgenericbearer.dll is up to date.
qsvgicon.dll is up to date.
qgif.dll is up to date.
qicns.dll is up to date.
qico.dll is up to date.
qjpeg.dll is up to date.
qsvg.dll is up to date.
qtga.dll is up to date.
qtiff.dll is up to date.
qwbmp.dll is up to date.
qwebp.dll is up to date.
qwindows.dll is up to date.
qtposition_positionpoll.dll is up to date.
qtposition_serialnmea.dll is up to date.
qtposition_winrt.dll is up to date.
windowsprintersupport.dll is up to date.
qwindowsvistastyle.dll is up to date.
Deploying: QtWebEngineProcess...
QtWebEngineProcess.exe is up to date.
F:\Common\coffey\CoPilotTesterV23.0\app739.exe 64 bit, release executable
Adding Qt5Svg for qsvgicon.dll
Skipping plugin qmldbg_debugger.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_inspector.dll due to disabled dependencies (Qt5Qml Qt5Quick).
Skipping plugin qmldbg_local.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_messages.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_native.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_nativedebugger.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_preview.dll due to disabled dependencies (Qt5Qml Qt5Quick).
Skipping plugin qmldbg_profiler.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_quickprofiler.dll due to disabled dependencies (Qt5Qml Qt5Quick).
Skipping plugin qmldbg_server.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qmldbg_tcp.dll due to disabled dependencies (Qt5Qml).
Skipping plugin qsgd3d12backend.dll due to disabled dependencies (Qt5Qml Qt5Quick).
Direct dependencies: Qt5Core Qt5Gui Qt5SerialPort Qt5Widgets Qt5WebEngineWidgets Qt5WebChannel
All dependencies   : Qt5Core Qt5Gui Qt5Network Qt5Positioning Qt5PrintSupport Qt5Qml Qt5Quick Qt5QuickWidgets Qt5SerialPort Qt5Widgets Qt5WebEngineCore Qt5WebEngineWidgets Qt5WebChannel
To be deployed     : Qt5Core Qt5Gui Qt5Network Qt5Positioning Qt5PrintSupport Qt5Qml Qt5Quick Qt5QuickWidgets Qt5SerialPort Qt5Svg Qt5Widgets Qt5WebEngineCore Qt5WebEngineWidgets Qt5WebChannel
Qt5QmlModels.dll is up to date.
Qt5Core.dll is up to date.
Qt5Gui.dll is up to date.
Qt5Network.dll is up to date.
Qt5Positioning.dll is up to date.
Qt5PrintSupport.dll is up to date.
Qt5Qml.dll is up to date.
Qt5Quick.dll is up to date.
Qt5QuickWidgets.dll is up to date.
Qt5SerialPort.dll is up to date.
Qt5Svg.dll is up to date.
Qt5Widgets.dll is up to date.
Qt5WebEngineCore.dll is up to date.
Qt5WebEngineWidgets.dll is up to date.
Qt5WebChannel.dll is up to date.
libGLESV2.dll is up to date.
libEGL.dll is up to date.
d3dcompiler_47.dll is up to date.
opengl32sw.dll is up to date.
qgenericbearer.dll is up to date.
qsvgicon.dll is up to date.
qgif.dll is up to date.
qicns.dll is up to date.
qico.dll is up to date.
qjpeg.dll is up to date.
qsvg.dll is up to date.
qtga.dll is up to date.
qtiff.dll is up to date.
qwbmp.dll is up to date.
qwebp.dll is up to date.
qwindows.dll is up to date.
qtposition_positionpoll.dll is up to date.
qtposition_serialnmea.dll is up to date.
qtposition_winrt.dll is up to date.
windowsprintersupport.dll is up to date.
qwindowsvistastyle.dll is up to date.
icudtl.dat is up to date.
qtwebengine_devtools_resources.pak is up to date.
qtwebengine_resources.pak is up to date.
qtwebengine_resources_100p.pak is up to date.
qtwebengine_resources_200p.pak is up to date.
en-US.pak is up to date.

这是依赖关系信息:

代码语言:javascript
运行
复制
F:\Common\coffey\CoPilotTesterV23.0>dumpbin /dependents app739.exe
Microsoft (R) COFF/PE Dumper Version 14.24.28316.0
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file app739.exe

File Type: EXECUTABLE IMAGE

  Image has the following dependencies:

    BTI42964.dll
    Qt5WebEngineWidgets.dll
    Qt5Widgets.dll
    Qt5Gui.dll
    Qt5SerialPort.dll
    Qt5WebChannel.dll
    Qt5Core.dll
    MSVCP140.dll
    WS2_32.dll
    BTICard64.dll
    KERNEL32.dll
    VCRUNTIME140.dll
    VCRUNTIME140_1.dll
    api-ms-win-crt-runtime-l1-1-0.dll
    api-ms-win-crt-heap-l1-1-0.dll
    api-ms-win-crt-stdio-l1-1-0.dll
    api-ms-win-crt-string-l1-1-0.dll
    api-ms-win-crt-math-l1-1-0.dll
    api-ms-win-crt-convert-l1-1-0.dll
    api-ms-win-crt-locale-l1-1-0.dll
    api-ms-win-crt-filesystem-l1-1-0.dll
    api-ms-win-crt-time-l1-1-0.dll
    SHELL32.dll
    api-ms-win-crt-utility-l1-1-0.dll

  Summary

        C000 .data
       13000 .pdata
       FF000 .rdata
        3000 .reloc
       4C000 .rsrc
      1BC000 .text

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-11-12 10:04:22

我在Windows10上运行QT5.15.1也遇到了类似的问题。QtWebEngineProcess.exe无法找到Qt5Core.dll,尽管它与可执行文件位于同一个文件夹中。对于我来说,当我禁用沙箱时,问题已经解决了,请参阅https://doc.qt.io/qt-5/qtwebengine-platform-notes.html

票数 1
EN

Stack Overflow用户

发布于 2020-07-16 01:35:33

使用Qt 5.15和VS 2019年,我也有同样的问题。但是,只有当我的应用程序部署在网络驱动器上时,才会出现此问题。相同的文件集合(其中qt5Core.dll位于同一个文件夹中)在所有本地驱动器上运行良好。

票数 4
EN

Stack Overflow用户

发布于 2020-03-06 19:42:13

部署Qt WebEngine流程 (与标准Qt5应用程序部署不同):

..。 Qt WebEngine利用了铬项目提供的多进程模型。多进程模型要求Qt WebEngine流程可执行文件与应用程序一起部署。 WebEngine进程针对每个QWebEngineViewWebEngineView实例执行。例如,打开两个选项卡的浏览器应用程序应该有两个独立的进程实例正在运行。这是大多数现代web引擎用来提供稳定的浏览体验的常用方法。 在运行时,Qt WebEngine在QLibraryInfo::location(QLibraryInfo::LibraryExecutablesPath)返回的目录中查找QtWebEngineProcess可执行文件。对于Qt安装,这是QTDIR/libexec (Linux)或QTDIR\bin (QTDIR\bin)。例如,可以通过定义qt.conf文件来更改路径。或者,可以将可执行路径设置为QTWEBENGINEPROCESS_PATH环境变量的值。在macOS上,Qt WebEngine在.app/Helpers/QtWebEngineProcess中查找可执行文件。 ..。

首先,您需要检查QLibraryInfo::location(QLibraryInfo::LibraryExecutablesPath);返回的路径。

另外:用于Windows-温布瑞特的标准Qt5应用程序部署控制台工具

另见:在Windows上部署QT5App

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60570225

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档