DELPHI5编程实例与技巧(九).pdf

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
下载 第9章 动态链接库 动态链接库(Dynamic Link Library ,简称D L L ) 是一些编译过的可执行代码模块,后缀名 为. D L L,可以在应用程序中或其他D L L 中被调用。在Wi n d o w s环境中,D L L可以实现多个应用 程序共享代码和资源。 D L L 的用途非常广泛,是Wi n d o w s程序设计中的一个非常重要的组成部分。本章将从 D L L 的一些基础知识讲起,说明如何在D e l p h i开发环境中创建和使用D L L 。 9.1 概述 使用普通的函数库时,可以在程序链接时将库中的代码拷贝到可执行文件中,这是一种 静态链接。在多个同样的程序执行时,系统保留了许多重复的代码副本,造成了内存资源的 浪费。 在使用 D L L 的情况下,当建立应用程序的可执行文件时,不必将 D L L 链接到程序中,而 是在应用程序运行时动态地装载 D L L 。装载时,D L L 将被映射到进程的地址空间中。同时, 使用D L L 的动态链接并不是将库代码拷贝,只是在程序中记录了函数的入口点和接口。不管 多少程序使用了 D L L ,内存中都只有该D L L 的一个副本。当没有程序使用它时,系统就将它 移出内存,减少了对内存和磁盘的要求。所以,使用 D L L 的一个明显的好处就是可以节省系 统资源。 此外,D L L被广泛地使用,还基于下面的一些原因: • D L L作为一种基于Wi n d o w s 的程序模块,不仅可以包含可执行代码,还可以包括数据和 各种资源等,扩大了库文件的使用范围。有些设备驱动程序也是由动态链接库实现的 (扩展名一般是D RV )。 • D L L技术对于开发大型软件系统也有可用之处。一个大型系统,如果用一个执行文件完 成,程序将很庞大,而且可能有许多重复的功能。如果将程序分成一系列的主程序和 D L L ,可以减少开发的工作量。而且由于每个模块减小了,访问的速度也提高了。 • D L L另一个用途是支持世界各国的语言。开发者可以将依赖于语言的函数和资源分离出 来,专门放进D L L 中,例如中文、英文、法文等。各地使用软件的用户可以安装或运行 适当的D L L ,以获取正确的本地信息。这是实现软件商品国际化的一项技术。 • 将一些功能模块做成 D L L后,如果需要对系统进行升级,只要将个别 D L L进行升级,然 后用新的D L L文件覆盖掉旧的D L L文件就可以了,而不需要将整个系统进行重新编译和 链接。 • D L L给程序开发带来了很多灵活性。例如,一件工作有许多方法可以完成,可以将这些 方法利用D L L实现。当以后新增加了方法后,将新方法也用 D L L 实现,然后只要对原来 的工程文件做少量的修改就可以了。 • D L L还独立于编程语言。例如,在D e l p h i环境中开发的D L L程序可以在Visual C++环境中 方便地使用;同时,在D e l p h i环境中也可以方便地使用在Visual C++ 中开发的D L L 。 了解了D L L 的这些特点,就不难明白为什么D L L 的应用那么广泛了。下面逐步地了解D L L 的实现过程。 第9章章动态链接库章名177 下载 9.2 创建动态链接库 例程S9_1 该例程说明创建D L L和使用D L L 的过程: 首先创建一个D L L工程,它将在另一个工程中被使用。具体过程如下: 1) 在D e l p h i集成开发环境中,通过菜单File | New 打开New Items 对话框,选中N e w标签中 的D L L 项,按下 O K 按钮。系统会自动创建一个 D L L 工程,并在代码编辑窗口中打开 P r o j e c t 1 . d p r文件。P r o j e c t 1 . d p r文件的内容如下: library Pro

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档