【问题标题】:Qt Error : Procedure Entry Not FoundQt 错误:未找到过程条目
【发布时间】:2016-11-22 14:36:22
【问题描述】:

我正在 Qt 5.6.1 中制作一个项目。当我在 Qt Creator 中运行它时,它运行良好。但是当我在文件夹中运行它时,它显示:

程序入口点 ??0QVariant@@QAE@ABVQString@@@Z 无法位于 dll Qt5Core.dll 中。

我该如何解决?

【问题讨论】:

标签: windows qt dll qt5 qmake


【解决方案1】:

如果您安装了多个版本的 Qt,那么在正确设置工具包的 QtCreator 中,一切都可能运行良好。 当您直接从构建目录运行时,可能会发生在执行期间使用的路径中有另一个版本的 Qt。

如果是这种情况,请转到Control Panel > System > Advanced system settings > Advanced tab > Environment Variables。在那里你应该更新Path 变量。在它前面放置可以找到 Qt dll 的路径。例如:C:\Qt\Qt5.6.1\5.6\mingw492_32\bin

如果这对您来说只是一次性的,您可以将所需的 dll 或 dll 复制到可执行文件所在的位置。结果应该是一样的。

编辑:

为确保在您从 Qt Creator 外部运行时加载相同的 dll,您可以使用 Dependency Walker。运行该工具并打开要启动的 exe。然后在左侧窗格中找到并选择QT5CORE.DLL,然后按 alt+enter 以显示属性。验证指定位置是否实际指向 C:\Qt\Qt5.6.1\5.6\mingw49_32\bin,这是您安装 Qt 的位置。

如果正确,您可以仔细检查 Qt Creator 在执行期间是否使用相同的目录。为此,请打开您的项目,转到 Projects 选项卡并在 Build Environment 部分显示详细信息并检查 QTDIR 变量是否指向与 Dependency Walker 找到的相同目录。

【讨论】:

  • 我该如何解决?
  • 我只有一个版本的 qt(5.6.1)。环境变量为:C:\Qt\Qt5.6.1\5.6\mingw49_32\bin; C:\Qt\Qt5.6.1\Tools\mingw492_32\bin。这样好吗?
  • 添加了您可以检查以找到问题的其他步骤。您的应用程序是 QML 应用程序吗?将 Qt5*.dll 复制到您的 exe 目录有帮助吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-28
  • 2016-02-11
  • 1970-01-01
  • 2013-08-26
相关资源
最近更新 更多