码迷,mamicode.com
首页 > 其他好文 > 详细

QT直接调用dll

时间:2014-05-01 21:54:21      阅读:438      评论:0      收藏:0      [点我收藏+]

标签:style   tar   ext   color   get   strong   文件   http   .net   load   os   

Qt调用DLL方法

   直接调用DLL则需要三个文件,头文件(.h)、导入库文件(.lib)、动态链接库(.dll),具体步骤如下:

注意:在qtCreaor中生成的动态库库文件文件为.a结尾,vs生成的动态链接库是.lib结尾

1首先我们把 .h.lib/.a 文件复制到程序当前目录下,然后再把dll文件复制到程序的输出目录(如果是debug版的话就将mydlld.dll放在此文件夹下,Release相同)。(注意:如果dll是用C写的,因此要用 extern "C" { #include "ExcelApI.h" }

2下面我们在pro文件中,添加 .lib文件的位置: (注意全名是libmydlld.a或是libmydll.a(gcc下的格式要求))

INCLUDEPATH+=./

LIBS+=-LE:/QTDemo/QTDLL/-lExcelApI                             //绝对路径

LIBS +=-L. -lExcelApI              //相对路径

 

         -L参数指定 .lib/.a文件的位置

         -l  参数指定导入库文件名(不要加扩展名) 

         另外,导入库文件的路径中,反斜杠用的是向右倾斜的 (考虑到程序的移植性,选择当前目录比较好些

 

下面对这句话进行解析:

1)+=这个符号是连接在一起的,不要自做聪明,给分开了,写成+ = ,这样就是错的!

2)+=的左右两边可以有空格,也可以没有空格,随意的

3)-L之后紧接着就跟着.lib文件所在的目录,比如,我的目录是在E盘下的QTDemo目录下的QTDLL目录

         注意,是紧跟着,不要分开,分开就错啦!

4)-l后面跟着的是.lib的文件名。

注意,比如你的.lib文件时ExcelApI .lib,不要写成了-lExcelApI.lib,不要带后缀,要写成-lExcelApI,同样,-l后面也没有空格

下面有:

实例demo:

http://download.csdn.net/detail/woshizfs/7060393

QT直接调用dll,码迷,mamicode.com

QT直接调用dll

标签:style   tar   ext   color   get   strong   文件   http   .net   load   os   

原文地址:http://blog.csdn.net/zfs_kuai/article/details/21458029

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!