VS2015动态库编程之MFC扩展动态库(上)

文章相关视频教程下载地址点击打开链接

MFC扩展动态库的内部可以使用MFC,导出的函数或者类也可以是MFC类型的。一般使用MFC扩展动态库来包含一些MFC的增强功能,比如扩展MFCCStatic或者CButton等控件类,使其具备更强大的功能。

1 动态库的生成

1.1 创建动态库

VS2015中新建一个MFC的动态库项目,在“MFC DLL向导”对话框中的“DLL类型”上选择“MFC扩展DLL”,创建MFC扩展动态库程序。该动态库程序包含了入口函数dllMain()

1.2 导入类

在该MFC的扩展动态库中,我们将定义一个CEdit类的派生类。该派生类实现了自定义文字颜色和背景的文本框。

1.2.1 生成派生类

VS2015界面中选择菜单栏的“项目->添加类”,之后弹出的“添加类”对话框的左侧选择“Visual C++->MFC”,在右侧选择“MFC类”,点击对话框右下方的“添加”按键,如图1所示。

 

1 添加MFC

接下来在“MFC添加类向导对话框中将类名设置为“CMyEdit”,基类设置为CEdit,如图2所示。

 

2 添加CEdit类的派生类

这样,在DLL项目中就添加了CMyEdit类对应的MyEdit.h头文件和MyEdit.cpp源文件。

1.2.2 实现CMyEdit派生类

(1)条件编译

使用VS2015动态库编程之导出C++”的“1.3定义类的导出属性”提到的方法实现类的条件编译。

MyEdit.h中添加如下代码

#pragma once

#ifdef DLL_MY_EDIT

#else

#define DLL_MY_EDIT _declspec(dllimport)

#endif

并且在CMyEdit的声明中添加DLL_MY_EDIT的修饰

class DLL_MY_EDIT CMyEdit :public CEdit

{

......

}

MyEdit.cpp中添加如下代码

#define DLL_MY_EDIT _declspec(dllexport)

#include "MyEdit.h"


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值