VS C++ 加载库始终返回 null

VS C++ LoadLibrary always returns null

本文关键字:返回 null C++ 加载 VS      更新时间:2023-10-16

VS2015 mfc project.正在尝试加载 QT5 小部件.dll

CString sPath("M:\ParseDLL\Qt5Widgets.dll");
HMODULE hm = LoadLibrary(sPath);

hm 始终为空。我尝试更改字符集(unicode,multy bite),在路径文本之前使用 _T、L,将 win 32 更改为 64。还是没有。GetlastErorr 代码 126 告诉"找不到指定的模块"。Dll 就在这条路上。有什么想法吗?

Tt 看起来像一个丢失的 DLL。如果M:ParseDLLQt5Widgets.dll确实存在,则意味着您缺少Qt5Widgets所需的DLL之一(或Qt5Widgets所需的DLL所需的DLL等)。

就像@Bathsheba所说,使用依赖查看器工具可以帮助您找到有问题的 DLL。

快速清单

  • 您需要在同一文件夹(或PATH)中至少包含Qt5Core.dll和Qt5Gui.dll并确保
  • 为您的软件使用与用于构建Qt的编译器相同的编译器(版本和架构)
  • 如果你在调试中构建软件,你可能还想使用Qt DLLs(Qt5Widgetsd.dll等)的调试版本。