【发布时间】:2014-08-10 18:46:47
【问题描述】:
我的应用程序在调试模式下运行。但它不会在发行版中运行。
此应用程序无法启动,因为它无法找到或加载 Qt 平台插件“windows”。
重新安装应用程序可能会解决此问题。
我复制了应用程序所需的 dll。我还复制了 qwindows.dll、qoffscreen.dll 和 libEGL.dll。
但 libEGL.dll 位于 C:\qt\5.3\msvc2013\bin 和 `C:Qt\ToolsQtCreator\bin'。我通过 msvc-11.0(2012) 编译了我的应用程序。
--
我将平台文件夹放到 exe 目录,现在应用程序运行但在 ntdll.dll 中立即崩溃!771e56bc()
现在我的问题与Why is ntdll.dll crashing my c++ executable?类似。
我可以让调试像发布一样工作但保存调试模式吗?
-- 这是发布模式的应用程序验证器结果。调试时不会发生。
=======================================
VERIFIER STOP 00000006: pid 0xDF0: Corrupted heap pointer or using wrong heap.
00161000 : Heap handle used in the call.
093F8FF8 : Heap block involved in the operation.
00000004 : Size of the heap block.
06441000 : Heap where block was originally allocated.
=======================================
This verifier stop is not continuable. Process will be terminated
when you use the `go' debugger command.
=======================================
MyApp.exe has triggered a breakpoint.
AVRF: Noncontinuable verifier stop 00000006 encountered. Terminating process ...
The thread 0x1724 has exited with code -1073740767 (0xc0000421).
The program '[3568] MyApp.exe' has exited with code -1073740767 (0xc0000421).
--
这是调用堆栈的顶部
vrfcore.dll!6ae43466() Unknown
[Frames below may be incorrect and/or missing, no symbols loaded for vrfcore.dll]
[External Code]
qwindows.dll!0f0642cb() Unknown
qwindows.dll!0f065f8a() Unknown
qwindows.dll!0f0662bb() Unknown
Qt5Gui.dll!0f774cf3() Unknown
Qt5Gui.dll!0f774e75() Unknown
Qt5Gui.dll!0f7778d5() Unknown
【问题讨论】:
-
您确定您的发布版本与 Visual Studio 的发布运行时链接吗?听起来有点像相关 DLL 的混合调试/发布配置。