实用工具软件环境(第4章)---VISUAL-BASIC-讲义.pptxVIP

实用工具软件环境(第4章)---VISUAL-BASIC-讲义.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实单用击软此件工处具编与辑环母境版标题样式第4章 动态连接库单击此处编诀辑窍母版副标题样式详细内容请参阅谭德强姜波主编《实用软件工具与环境—C++高级编程》无法精选ppt1获取该音本章主要教学内容S 什么是动态连接库(DLL)S 动态连接库有哪些种类,各有些什么特点 S 如何在Visual C++中生成和使用动态连接库 S 利用Visual C++软件开发环境编制一个 DLL程序的实例?精选ppt?无法获取该音第4章 动态连接库动态连接库(DLL)概述DLL的基本理论用VC++开发环境生成DLL使用DLL用VC++开发DLL的编程事例本章小结思考与练习?精选ppt?无法获取该音4.1 动态连接库(DLL)概述S 作用:s 通过创建和使用DLL,可以方便地实现多个用户 对DLL的共享(通过库文件和函数调用说明文件)s DLL类似C原文件,提供函数、资源和数据s 通过DLL的使用可方便的实现应用程序的本地化S DLL与可执行文件的区别和联系:s DLL要求一个DEF(模块定义文件) s DLL要求一个DllMain()的入口点 s DLL可以装入,但不能执行?精选ppt?无法获取该音4.1 动态连接库(DLL)概述(C)4.1.1 DLL的定义S DLL是应用程序中的一段程序,是一个可以从. exe文件中单独执行的模块。S DLL是其它应用程序在执行时能够动态链接和调用的一组服务或函数。S DLL是Windows程序设计非常有用的一种方法。?精选ppt?无法获取该音4.1 动态连接库(DLL)概述(C)4.1.2 DLL的种类(由MFC AppWizard支持生成) T Win32 DLLs 空DLL工程s 简单的DLL工程s 导出变量、函数和类的DLLS MFC AppWizard DLLs 静态链接MFC的Regular DLL s 动态链接MFC的Regular DLLs 动态链接MFC的扩展(Extension) DLL?精选ppt?无法获取该音4.1 动态连接库(DLL)概述(C)4.1.3 动态连接库和静态连接库的比较 S 区别:s 使用静态链接库,其函数代码包含在应用程序中 s 使用动态链接库,只需包含函数信息即可S 动态链接库的优点:s 有利于程序共享s 多个程序使用DLL的单一映射,节约内存空间 s 通过程序拆分,有利于程序升级s 可以节约大量硬盘空间?精选ppt?无法获取该音4.2 DLL的基本理论4.2.1 DLL的入出口函数S被系统调用,以完成DLL的初始化和终止工作。⒈DllMain函数S一般DLL的入出口函数,需自己编写代码S一个DLL调用和撤除时被调用 S函数结构:p.85⒉MFC的Regular DLL入出口S由MFC提供,不必自己编写代码应用程序使用LoadLibrary 和FreeLibrary等函数及进程、线程启动和终止时。S装时调用InitInstance,卸时调用ExitInstance?精选ppt?无法获取该音4.2 DLL的基本理论(C)4.2.2 DLL的链接方式⒈隐式链接动态链接库S应用程序通过说明DLL的导入库文件(lib)链接, lib文件中包含一系列指向动态链接库的指针S应用程序必须获得的有关DLL的信息:s 包含导出函数以及类声明的头文件,需要知道函数名和函数接口信息s DLL的导入库文件(应用程序编译链接时使用),使用Project|Add To Project/Setting选择lib文件s 实际的DLL文件(应用程序运行时调用)?精选ppt?无法获取该音4.2 DLL的基本理论(C)4.2.2 DLL的链接方式(C)⒉显式链接动态链接库S应用程序在运行时通过函数调用显式装载和卸载 DLL,并通过函数指针调用DLL的导出函数S函数使用的基本方式:s DLL的装载函数:LoadLibrary或AfxloadLibrary s 获取导出函数指针函数:GetProcAddresss DLL的卸载函数:FreeLibrary或AfxFreeLibrary?精选ppt?无法获取该音4.2 DLL的基本理论(C)4.2.3 动态连接库库函数的导出⒈在源程序中使用关键字_declspec(dllexport)S根据一个指定的存储类属性,存储某个项目数据。从动态连接库文件中输出数据、函数、类、类成员函数,而不需要DEF文件。S语法如下:_declspec(extended-attribute) declarator; S在应用程序中使用关键字_declspec(dllimport)引入DLL中的数据、函数以及类?精选ppt?无法获取该音4.2 DLL的基本理论(C)4.2.3 动态连接库库函数的导出(C)⒉在DEF中通过EXPORTS来声明函数SDEF是由一个或多个描述DLL属性的语句

文档评论(0)

mini小不懂 + 关注
实名认证
文档贡献者

你不是在修补而是在创造;永远不要忘记你向人们所展示的是你的思想,而不是你的手艺。

1亿VIP精品文档

相关文档