动态连接库创建
来源:互联网 发布:腾讯软件管理下载 编辑:程序博客网 时间:2024/05/17 04:21
最近在写接口程序,要使用到动态链接库。使用中遇到一些问题,现总结如下:
动态链接库创建,本程序是一个带窗体的MFC的动态链接库,使用.def方式导出,方便后期使用:动态链接库 静态调用的方式使用。
1,新建动态链接库项目,项目属性:
注意其中的:配置类型,mfc的使用
2,新建窗体
在资源视图中添加窗体资源,
3,添加窗体类
在资源视图,窗体界面 右键 添加类,
同时完善窗体设计,添加代码
void cDialog::OnBnClickedButton1(){ // TODO: 在此添加控件通知处理程序代码 AfxMessageBox(_T("调用成功"));}
4,修改主项目代码,:注意,不是窗体类代码
4.1,头文件修改(*.h),引入资源文件
#include "resource.h" // 主符号
4.2修改源文件(*.cpp,如MFCdll.cpp)
//引入窗体# include "cDialog.h" //定义输出库函数,以被MFC程序调用 //extern "C" __declspec(dllexport) void ShowDlg(void) extern "C" void _stdcall ShowDlg(void) //def 模式,推荐使用{ //必须:添加AFX_MANAGE_STATE宏,进行DLL模块状态资源的切换 AFX_MANAGE_STATE(AfxGetStaticModuleState()); //创建DLL对话框 cDialog dllDialog; dllDialog.DoModal();}
4.3修改 *.def文件
; MFCdll.def : 声明 DLL 的模块参数。如果要将函数确定不能使用动态调用,需要在函数名称后加 private 修饰(private修饰的作用是:禁止将 entryname 包含在由 LINK 生成的导入库中。这就决定了导出函数只能进行动态调用,因为它没有被编译进导出库文件中)。如:ShowDlg private LIBRARYEXPORTS ; 此处可以是显式导出 ShowDlg
编译完成!!(因为不是可执行程序,编译结束会报错)
0 0
- 动态连接库创建
- 创建DLL动态连接库
- 怎样创建动态连接库
- 创建DLL动态连接库
- 动态连接库的创建
- 创建MFC动态连接库
- WINCE创建动态连接库
- 动态连接库的创建及调用
- DLL(动态连接库)创建和使用
- 创建和使用动态连接库
- linux 动态链接库的创建和使用--动态连接
- linux 动态链接库的创建和使用--动态连接
- TOMCAT动态创建连接池
- 动态创建数据库和动态连接数据库
- 动态创建数据库和动态连接数据库
- VC中创建DLL动态连接库的方法
- 使用VS的动态连接库创建通用数据库连接对话框
- linux 动态链接库的创建和使用--静态连接
- ios命名规范
- MYSQL整型数据
- Linux——alias 设置别名详解
- exlipse同时操作多行。比如同时在多行同列输入相同的文字
- 计算机图形学(五)线段的中点分割裁剪算法讲解与源代码
- 动态连接库创建
- 互联网架构,如何进行容量设计?
- Android Studio安装过程
- Linux——CentOS建立一个最高权限的用户
- pycharm注册码
- Python——列表中存放字典遇到的问题
- oj125. Valid Palindrome
- java发送http请求模板示例
- html状态码