QT加载动态链接库dll文件(windows系统下)

描述 在windows系统下我们构建一个QT工程,它可能需要第三方库的支持。这个第三方库可能提供了三类支持 .h文件和.cpp文件.lib文件.dll文件 代码 在工程的.pro文件中,是

描述

在windows系统下我们构建一个QT工程,它可能需要第三方库的支持。这个第三方库可能提供了三类支持

  • .h文件和.cpp文件
  • .lib文件
  • .dll文件

代码

在工程的.pro文件中,是整个工程的配置文件
我们在其中添加这样几句话,就可以加载第三方的lib文件和dll文件了

lib文件加载

假设我们有XXX.lib文件需要加载
我的建议是将所有lib文件,放到main.cpp文件同级的lib文件夹下,QT加载lib文件的格式是这样的

LIBS+=-L路径 -l文件名 

因此我们这样写,就可以加载lib文件了

LIBS+=-L$$PWD/lib/ -lXXX

dll文件

假设我们有XXX.dll文件需要加载
同样,将所有dll文件,放到main.cpp文件同级的bin文件夹下,QT加载bin文件的格式与lib文件相同

LIBS+=-L$$PWD/bin/ -lXXX

判断是否加载成功

关于dll文件的加载,有一个非常好用的办法去判断是否加载成功。
我们可以在main.cpp中这样去编写

#include <QLibrary>
int main (int argc, char** argv)
{
    QLibrary mylib("XXX.dll"); // XXX为dll文件名,不需要路径
    mylib.load();
    if (mylib.isLoaded()){
        std::cout<<"yes"<<std::endl;
    }else{
        std::cout<<"no"<<std::endl;
    }
}

发布者:admin,转转请注明出处:http://www.yc00.com/web/1738019977a4012297.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信