加载与QLibrary具有依赖关系的库

时间:2014-03-12 14:28:29

标签: qt qlibrary

假设我有两个库,A.dllB.dll。库A取决于B。我想将A加载到我的项目中。

我的项目位于C:/Project。如果我同时将A.dllB.dll保留在C:/Project中,我可以加载A

QLibrary lib("A"); 
lib.load();

这很好用。如果load()B.dll不在C:/ProjectA.dll将返回false。

问题是我想在B.dll中同时保留C:/Project/libQLibrary lib("C:/Project/lib/A"); lib.load(); 。但当我将两个库移动到该位置并尝试加载时:

A.dll

失败了。但是,如果我将C:/Project/lib B.dllC:/Project C:/Project/lib保留在A.dll中,则此方法有效。

如何将这两个库保留在"Cannot load library C:/Project/lib/A . The specified module could not be found."并成功加载{{1}}?

修改:我收到的错误消息为{{1}}

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

您应该在系统环境中添加C:/ Project / lib的路径,或者从Projects选项卡添加到QT Creator中编辑Path变量(添加库的路径)