Qt 5.2.0在Windows 7上缺少DLL文件(程序崩溃)

7
尝试运行一个Windows 7,Qt 5.2.0程序,但它立即崩溃。我有mingw48_32版本和32位版本的Qt 5.2.0。我没有Visual Studio,虽然我下载并安装了一些2010 VS SDK和.Net框架,但仍然没有成功。我已经尝试过搜索这些东西,但没有找到。如果它在我的计算机上,则尚未找到它们。

运行依赖项工具后,显示以下缺少的DLL文件:

GPSVC.DLL
IESHIM.DLL
API-MS-WIN-SHCORE-SCALING-L1-1-1.DLL
API-MS-WIN-EVENTING-PROVIDER-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-L1-1-0.DLL
API-MS-WIN-CORE-ERROR-L1-1-0.DLL
API-MS-WIN-CORE-THREADPOOL-L1-2-0.DLL
API-MS-WIN-CORE-SYSINFO-L1-2-0.DLL
API-MS-WIN-CORE-SYNCH-L1-2-0.DLL
API-MS-WIN-CORE-RTLSUPPORT-L1-2-0.DLL
API-MS-WIN-CORE-REGISTRY-L1-1-0.DLL
API-MS-WIN-CORE-PROCESSTHREADS-L1-1-1.DLL
API-MS-WIN-CORE-MEMORY-L1-1-1.DLL
API-MS-WIN-CORE-LIBRARYLOADER-L1-1-1.DLL
API-MS-WIN-CORE-INTERLOCKED-L1-2-0.DLL
API-MS-WIN-CORE-HEAP-L1-2-0.DLL
API-MS-WIN-CORE-ERRORHANDLING-L1-1-1.DLL
API-MS-WIN-CORE-DELAYLOAD-L1-1-1.DLL
API-MS-WIN-CORE-DEBUG-L1-1-1.DLL
API-MS-WIN-APPMODEL-RUNTIME-L1-1-0.DLL

非常感谢任何帮助我解决这个问题的人!我已经花了几天时间尝试弄清楚它。

谢谢!


在另一台计算机上,我似乎在“Windows\winsxs\x86_microsoft-windows-minkernelapinamespace_31bf3856ad364e35_6.1.7601.22125_none_blahblahblah”目录下找到了所有的API-MS-WIN内容。有人知道这是什么或者我可以在线下载吗?可能是我缺少的某个SDK吗? - Tim
你有没有在这方面有什么进展?我遇到了同样的问题,但是我能找到的唯一信息似乎表明“API-MS-WIN-*.DLL”是Windows 8 DLL。如果我在Windows 7上构建,我不确定为什么Qt会生成依赖于它们的可执行文件... - Michael Cooper
请阅读此答案: https://dev59.com/Nm_Xa4cB1Zd3GeqP7P7M#15569097 - Reza Ebrahimi
这些是WinRT DLL,它们在Win 7上不存在。 - David Heffernan
4个回答

2
今天我也遇到了同样的问题。我找到了问题所在。我的程序加载了错误版本的DLL。这可能是因为在PATH路径下或程序文件夹中存在不兼容的库,这些库与“缺失”的库有引用关系。在Windows文档中,解释了搜索DLL的优先级文件夹。

1

我遇到了同样的问题。我意识到我复制了错误的dll文件。它们与旧版本(从qt 5.0到qt 5.5.1)具有相同的名称。所以,我只需要复制正确的文件就可以解决问题了。


0
如果Qt项目依赖于多媒体插件:
在.pro文件中添加以下内容: win32: QTPLUGIN.audio=qtaudio_windows

-2

当我在Windows 10下使用Microsoft Visual Studio 2010编译C++程序并尝试在Windows 7下安装时,会遇到类似的错误。 解决方案:在Windows 7下编译C++程序。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接