用VS + qt 生成dll 和 调用生成的dll
环境: vs 2019 + qt 5.12
创建dll
上一次我们是直接使用的qt 为我们提供方便的类库创建 ,这次呢 我们自己写类库
第一步:创建一个QT应用程序
第二步,修改程序为 生成dll
并且 我修改了生成的所在路径
添加QT的模块 ,自己用了什么,就添加什么,对应自己的版本,我的是release
代码如下:自己手动添加了 宏
#pragma once
# if defined Widget_DLL
# define WidgetDLL_EXPORT Q_DECL_EXPORT
# else
# define WidgetDLL_EXPORT Q_DECL_IMPORT
# endif
#include
#include "ui_WidgetDLL.h"
class WidgetDLL_EXPORT WidgetDLL : public QWidget
{
Q_OBJECT
public:
WidgetDLL(QWidget *parent = Q_NULLPTR);
private:
Ui::WidgetDLLClass ui;
};
这样我们就是一个导出类了
第三步:生成我们的界面dll
include 包含头文件 ui_xxx.h 这是我们uic 编译 所生成的文件 ,我们需要添加进来,否则会报错 ,找不到它,他在什么位置呢? 在我们的uic文件夹中 可以找到 该文件
bin中所包含的动态库 和 导入库 (这里的lib其实是导入库,不是静态库)
第四步:调用我们生成的界面dll
如何调用呢,其实和我们上一次链接的是相同的
我们需要将 界面dll 与 exe 同级
运行结果如下: