vs2013/QT5 调用C++编写的DLL类中的方法

系统环境:win7 64位

vs2013下,选择C++类模板,新建win32控制台工程,下一步,选择Dll工程,并勾选“导出符号”,Finish;

vs2013会自动生成一个导出的类,一个导出的方法,一个导出的变量;编译生成DLL;

在vs2013下新建QT工程;这里采用静态调用DLL方式

将生成的.dll文件拷贝到QT工程目录下,

配置QT工程属性c/c++  附加包含目录  包含dll工程下的根目录(.h文件所在目录)

                             连接器 ----附件库目录   包含dll工程下的.Lib文件目录

                              连接器-----输入          输入xxx.dll文件名

在QT工程中需要dll类方法的文件中包含.h头文件

当要在程序中编程时,发现导出的方法和导出的变量可以使用,但是导出的类中的方法无法访问;

解决办法:将导出的类名前的XXXX_API删除

在类中需要导出的方法前增加XXXX_API字样;

重新编译,并把编译完成的.DLL文件复制到QT根目录下,其他配置不变;

发现DLL类中的方法也可以引用了;

注意:dll编译的目标框架(win32或者X86)要与引用dll的项目的目标框架一致

即x64目标框架的工程要引用编译为X64目标框架的dll;否则会出现目标计算机类型与模板计算机类型不匹配错误;

展开阅读全文

没有更多推荐了,返回首页