全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
动态连接库的创建步骤:一、创建Non-MFC DLL动态链接库1、打开File New Project选项,选择Win32 Dynamic-Link Library sample project 工程名:DllDemo2、新建一个.h文件DllDemo.h#ifdefDllDemo_EXPORTS #defineDllAPI_declspec(dllexport) #else #defineDllAPI_declspec(dllimport) externC/原样编译 DllAPIint_stdcallMax(inta,intb);/_stdcall使非C/C+语言内能够调用API #endif3、在DllDemo.cpp文件中导入DllDemo.h文件,并实现Max(int,int)函数#includeDllDemo.h DllAPIint_stdcallMax(inta,intb) if(a=b) returnNULL; elseif(ab) returna; else returnb; 4、编译程序生成动态连接库二、用.def文件创建动态连接库DllDemo.dll1、删除DllDemo工程中的DllDemo.h文件。2、在DllDemo.cpp文件头,删除 #include DllDemo.h语句。3、向该工程中加入一个文本文件,命名为DllDemo.def并写入如下语句:LIBRARY MyDllEXPORTSMax14、编译程序生成动态连接库。动态链接的调用步骤:一、隐式调用1、建立DllCnslTest工程2、将文件DllDemo.dll、DllDemo.lib拷贝到DllCnslTest工程所在的目录3、在DllCnslTest.h中添加如下语句:#defineDllAPI_declspec(dllimport) #pragmacomment(lib,DllDemo.lib)/在编辑器link时,链接到DllDemo.lib文件 externC DllAPIint_stdcallMax(inta,intb); 4、在DllCnslTest.cpp文件中添加如下语句:#includeDllCnslTest.h/或者#includeDllDemo.h voidmain() intvalue; value=Max(2,9); printf(TheMaxvalueis%dn,value); 5、编译并生成应用程序DllCnslTest.exe二、显式调用1、建立DllWinTest工程。2、将文件DllDemo.dll拷贝到DllWinTest工程所在的目录或Windows系统目录下。3、用vc/bin下的Dumpbin.exe的小程序,查看DLL文件(DllDemo.dll)中的函数结构。4、使用类型定义关键字typedef,定义指向和DLL中相同的函数原型指针。例:typedefint(*lpMax)(inta,intb);/此语句可以放在.h文件中5、通过LoadLibray()将DLL加载到当前的应用程序中并返回当前DLL文件的句柄。例:HINSTANCEhDll;/声明一个Dll实例文件句柄 hDll=LoadLibrary(DllDemo.dll);/导入DllDemo.dll动态连接库6、通过GetProcAddress()函数获取导入到应用程序中的函数指针。例:lpMaxMax; Max=(lpMax)GetProcAddress(hDLL,Max); intvalue; value=Max(2,9); printf(TheMaxvalueis%d,value);7、函数调用完毕后,使用FreeLibrar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工培训与晋升评估表
- 建筑消防设施维修保养合同规范解读
- 中班角色游戏教学计划方案示例
- 经典散文教学设计与课堂互动方案
- 道路建设混凝土与沥青施工方案范文
- 职业技能等级认证考试培训考纲解析
- 智能制造系统实施方案及案例解析
- 小学科学素质拓展活动方案
- 园林绿化工程施工合同范本与注意事项
- 小学古诗词记忆与默写教学方案
- 2025年农业科技研究员招聘面试参考题库及答案
- 中国球铁铸造件行业市场规模及未来投资方向研究报告
- 2025+ACOG产时胎心率监测指南详解课件
- 2026云南玉溪市玉白顶自然保护区管护局招聘森林草原火灾预防专业队队员40人笔试考试参考试题附答案解析
- 服装专业职业生涯规划
- 湖北省黄冈市部分高中2026届高三上学期期中考试政治试卷(含解析)
- 领导力培训课件:情商与领导力
- 2025年国语入门测试试卷及答案
- 合规性保证承诺书范本8篇范文
- 2025中国电信安徽分公司定向招聘47人(含应届和非应届)易考易错模拟试题(共500题)试卷后附参考答案
- 机场地勤地面服务员岗位常用面试题集含行为面试
评论
0/150
提交评论