一、使用QT生成动态库。
1、使用QT新建工程,步骤New Project-->>Library-->>C++库。
2、给项目取名test21, 选择 “共享库”。
3、选择“Desktop Qt 5.9.1 MSVC2013 64bit”。
4、选择自己需要模块,如果不需要,则跳过这一步。
5、双击“test21.pro”文件,并添加include(../QSoap/src/qtwinmigrate.pri),此模块用于与MFC窗口通信。
该模块是一个单独工程,需要单独下载。
6、双击“test21.h”文件,添加Test21(void *pWnd)、int Add(int a, int b)、int Sub(int a, intb) 和 void SendMsg(char *pMsg)四个函数, 声明变量void *m_pWnd。
7、在“test21.cpp”实现上面四个函数。
8、编译工程得到test21.dll和test21.lib。
二、使用VS2013新建C++工程,调用QT动态库。
1、使用VS2013新建工程,命名为 “test34”。
2、选择“基于对话框”, 点击“完成”。
3、界面布局如下。
4、新建一个目录Test_DLL,在目录中分别新建bin、lib、include三个目录,把QT生成的动态库test21.dll拷贝到bin目录,test21.lib拷贝到lib目录,test21.h拷贝到include目录。
5、在工程中引入QT动态库,如下所示。
6、双击打开“test34Dlg.h”, 在该文件引入QT动态库头文件“test21.h”,并声明对象Test21 *m_pTest21。
7、双击打开“test34Dlg.cpp”文件,为m_pTest21对象申请内存。
8、调用QT动态的Add和Sub函数。
9、接收QT动态库发送的消息,添加WM_COPYDATA消息。
鼠标对准工程右键 ,点击“类向导”-->>“消息”-->>“WM_COPYDATA”,双击“WM_COPYDATA”, 点“完成”’。
10、接收消息并显示到界面。
三、测试结果。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)