无法在Qt创建者中运行Qt示例:程序意外完成

时间:2017-02-08 06:33:56

标签: qt qt-creator qt5.8

最近我尝试在Qt5.6.2 MSVC 2013上将Windows上的Qt升级到5.8.0,我看到了一些奇怪的问题。

我从此链接下载并安装了Visual Studio 2015:https://www.visualstudio.com/downloads/

安装Qt 5.8.0 MSVC 2015版本后,可以启动Qt Creator 4.2.1。在欢迎页面中,我选择了名为:"地址簿示例"的示例。然后点击"配置"项目,该项目列在Qt Creator中。

现在我尝试构建项目,这是成功的。但是当我尝试运行该项目时,我收到以下错误消息:

Starting C:\Qt\Examples\Qt-5.8\widgets\itemviews\build-addressbook-Desktop_Qt_5_8_0_MSVC2015_32bit-Debug\debug\addressbook.exe...
The program has unexpectedly finished.
C:\Qt\Examples\Qt-5.8\widgets\itemviews\build-addressbook-Desktop_Qt_5_8_0_MSVC2015_32bit-Debug\debug\addressbook.exe crashed.

在我使用Qt5.6.2和MSVC 2013之前,我没有看到这种错误。我还尝试了以下方法:

  • 使用离线安装程序重新安装Qt5.8.0 MSVC 2015
  • 使用离线安装程序重新安装Qt5.7.1 MSVC 2015
  • 使用离线安装程序重新安装Qt5.6.2 MSVC 2015
  • 使用在线安装程序重新安装Qt5.8.0,其中我选择了MSVC 2013和MSVC 2015

我仍然收到相同的错误消息。

当我去调试文件夹时,双击exe文件,它说有些Qt dll丢失了。然后我手动复制到调试文件夹,然后exe可以运行没有问题。

现在我想从Qt Creator中运行应用程序,但不确定Qt Creator 4.2.1的问题是什么。我在Google上研究了几个小时,但仍然无法找出Qt Creator无法运行项目的原因,即使它是自己的示例项目。 (我自己项目的错误相同)

我觉得它必须与Qt创建者环境/设置有关。有人对这个问题有任何想法吗?

更新1:

我尝试将MinGW与Qt Creator一起使用,可以正确运行地址簿示例。看起来它与MSVC 2015有关。我需要MSVC 2015,因为所有其他环境都不支持webenginewidgets,我得到了:

:-1: error: Unknown module(s) in QT: webenginewidgets

不确定这是否是Qt或Qt创建者中的错误。

更新2:

在我的Qt Creator中,我看到了MSVC 2013和MSVC 2015编译器的警告图标,请参阅下面的屏幕截图: enter image description here enter image description here

2 个答案:

答案 0 :(得分:3)

我终于解决了这个问题。原因是缺少Windows 10 SDK

下载并安装Windows 10 SDK的所有默认组件后,所有内容都适用于Windows 7 32位。

基本上,为了确保我们可以在Windows上使用Qt5.8.0 +(包括Qt WebEngine),我们需要同时安装:

答案 1 :(得分:1)

我迟到了,但我发现主要罪魁祸首是" ucrtbased.dll "。

我没有安装Windows 10 SDK。

我安装了Windows 7 SP1 x64, Qt 5.9.2 ,安装了Visual Studio Build Tools 2015(v14.0.25420.1)和安装了MS Debugger Tools(CDB)的Windows 8.1 SDK 。发布配置版本没有任何问题,但调试配置表现出相同的崩溃行为。 修复很简单。 Visual Studio Build Tools 2015与Win8.1 SDK的正常安装位置" ucrtbased.dll " in" C:\ Program Files(x86)\ Windows Kits \ 10 \ bin \ x64 \ ucrt"对于64位和" .. \ x86 \ ucrt"对于32位版本 - 甚至没有安装Windows 10 SDK。如果它们包含在系统路径中,或者复制到Qt的当前项目构建文件夹中,则问题就解决了。