092_《Delphi6高级编程》

Delphi6高级编程
本书为Delphi6高级编程教程,覆盖OLE自动化、DLL使用、多线程编程、GUI开发、多媒体应用、组件开发及网络编程等内容。适用于中高级程序员。

《Delphi6高级编程》

Delphi 教程 系列书籍 (092) Delphi6高级编程》 网友(邦)整理 EMail: shuaihj@163.com

下载地址:

下载

Delphi6高级编程

  • 作者: 飞思科技产品研发中心
  • 丛书名: 开发专家之Delphi
  • 出版社:电子工业出版社
  • ISBN:7505373609
  • 上架时间:2002-2-7
  • 出版日期:2002 年1月
  • 页码:646
  • 版次:1-1

内容简介

本书属于《开发专家之DelPhi》系列。Delphi 6是Borland公司推出的最新版本,该版本在以前的基础上进行了升级和改进,使得它成为Windows 2000平台上最受欢迎的开发工具之一。 本书重点以Delphi 6的各种实用开发技术为主线。全书分8篇,共19章,主要包括OLE自动化、DLL的使用、多线程编程、Delphi的文件处理、GUI开发、多媒体应用的开发、组件开发、网络编程等方面的内容。所附光盘包含书中全部实例源代码。 本书内容翔实,实例丰富,解析深刻,适用于中高级的专业和准专业的程序开发人员,也可作为网络管理员、系统分析员的技术参考书。

前言

关于本套丛书

Delphi是美国Borland公司推出的功能强大的应用程序开发工具。它具有功能强大、运行速度快、易于学习和使用以及开发效率高等特点。它是可视化应用编程开发环境、可重用性面向对象编程语言、快速编译器和数据库的完美结合。

Delphi 6于2001年6月发布。新版本的Delphi 6开发功能更加强大,除了能够有效帮助开发者个人或其开发团队快速建立Windows应用程序,快速简化Windows与浏览器客户、Web服务器、中间件以及后台数据库系统的集成等等这些传统意义上的开发之外,Delphi 6是目前惟一全面支持所有主要工业标准(XML、SOAP、WSDL、XSL等)的开发工具,同时也支持基于Web服务的Microsoft.NET和Sun ONE体系,而且提供给Web开发者需要的可伸缩性与可靠性。新的Delphi 6框架中还包括了BizSnap、WebSnap和DataSnap,用户可以用它开发支持Web服务特性的服务器端和客户端应用,而这一切都是通过一套高度集成的可视化开发工具、先进的编译技术和可重用的组件完成的。特别是在电子商务愈加流行的今天,通过Delphi6,任何企业都能很快地转移到未来基于Web服务的电子商务应用程序开发上,而不用丢弃以往的开发方式、技巧和源代码。可见,要创建一流的Web应用程序,Delphi 6无疑是目前的最佳选择之一。

《开发专家之Delphi》系列丛书就是针对Delphi 6的整个开发体系和特色进行组织的,涵盖了Delphi开发所有重要方面,为开发人员提供了完整的知识架构,无论要进行怎样的Delphi开发,都可以在这套丛书中找到明确的解决方案和经验之谈。

同时,专业的作者队伍、完整的解决方案和详尽的实例剖析是这套丛书高质量的基础和保证,也是本套丛书的最大特色所在。

总之,哪怕是最熟练的程序员也需要专业的技术文献,这套丛书就是经典的开发经验及实例的集成,所以必将受到专业人士的关注和欢迎。

关于本书

《Delphi 6高级编程》涵盖了Dephi专业编程的最重要的几个方面。

全书共分8篇。

第一篇介绍OLE自动化,这是Windows应用程序之间相互操作的一个典型技巧。

第二篇介绍了DLL的使用,重点讨论了Win32动态链接库DLL的工作原理,DLL的创建、使用以及调试等各方面的要点,这是用来编写Windows应用程序的关键组成部分。

第三篇介绍了多线程编程,主要包括线程的基本概念、TThread对象、多线程的管理及其多线程在数据库领域的应用等问题。

第四篇Delphi的文件处理,对处理不同类型的文件进行了详细介绍,包括如何使用TFileStean类封装文件的输入/输出以及如何利用32位Windows的主要特征——内存映射文件,还提供了一些关于选择驱动器、在树型目录中查找文件以及获得版本信息的方法。

第五篇GUI开发,详细介绍了如何开发出用户自己的图形效果。要特别指出的是,用Delphi 6进行图形界面设计是相当方便的,这是为人称道的优点之一。

第六篇多媒体应用开发,包括了视频和音频两方面的内容,这也是Delphi6开发的特长之一。

第七篇组件开发,详细介绍了可视化组件的开发过程,为高级程序员提供了大型应用程序开发的可重用性方法和技巧,本篇还介绍了功能强大的ActiveX控件。

第八篇网络编程,详细介绍了基于TCP/IP和Socket的网络编程,这是目前很流行的编程开发方向和应用。

全书包含了Delphi专业编程者的所有开发实例和经验,非常有实用价值。

本书由飞思科技产品研发中心策划并组织编写,徐敦忠、杨枭、陆正武等参加了本书的写作,陆正中对全书进行了统稿。同时,在本书的写作过程中得到了刘文智先生的大力支持和协助,他提出了大量的参考性意见更使本书增色不少。在此表示衷心的感谢。

当然,限于作者水平,加之时间仓促,书中不足之外难免,敬请读者批评指正。

电话:(010)68134545 68134811

E-mail: support@fecit.com.cn

网址: http://www.fecit.com.cn http://www.fecit.net

飞思科技产品研发中心

目录

第一篇 ole自动化

第1章 ole自动化

1.1 创建ole自动化对象

1.2 ole对象的两种状态

1.3 对象链接与嵌入的比较

1.4 ole容器

1.5 ole的数据类型

1.5. 1 ole的基本数据类型

1.5.2 olevariant类型

1.6 olevariant类型的应用

1.6.1 创建oleautomation对象的实例

1.6.2 访问automation对象的特性

1.6.3 访问automation对象的方法

第2章 开发ole自动化服务器程序

2.1 编辑类型库

2.2 操纵automation对象

2.2.1 添加新的属性

2.2.2 添加新的方法

2.2.3 添加新的事件

2.3 制作一个简单的自动化客户

2.4 制作一个简单的自动化服务器

第3章 ole在office系统中的实现

3.1 ole文件

3.2 delphi 6与office系统的连接

3.2.1 设计多文件窗体

3.2.2 代码实现

3.2.3 运行程序

3.3 导出数据到office系统

3.3. 1 从delphi 6导出数据到word 2000

3.3. 2 从delphi 6导出数据到excel 2000

3.3. 3 从delphi 6导出数据到powerpoint 2000

第二篇 dll的使用

第4章 dll概述

4.1 认识dll

4.2 为什么使用dll

4.2.1 共享代码、资源和数据

4.2.2 隐藏实现的细节

4. 2.3 自定义构件

4.3 设置dll的首选基地址

4.4 dll工程文件

4.4.1 dll工程文件与普通delphi工程文件的区别

4.4.2 dll中的变量

4.4.3 dll与exe文件

4.5 在delphi中创建简单的dll

4.5.1 使用关键字expoits

4.5.2 创建dll

4.5.3 dll的初始化代码

4.5.4 例程——创建一个简单的dll

4.6 显示dll中的窗体

4. 6.1 显示dll中的模式窗体

4. 6.2 显示dll中的非模式窗体

第5章 窗体重用的实现

5.1 重用dll的设计

5.1.1 口令设置窗体

5.1.2 口令检查窗体

5.1.3 保存dll

5.2 重用dll的调用

第6章 dll的调用及调试

6.1 调用dll

6.1.1 静态调用dll

6.1.2 动态调用dll

6.1.3 静态调用与动态调用的区别

6.2 访问dll

6.2.1 dll的入出口函数

6.2.2 一个允许共享数据的dll

6.2.3 访问dll中的共享数据

6.2.4 访问dll中的对象及方法

6.3 dll调试技巧

6.3.1 设置调试选项

6.3.2 使用内部调试器

6.3.3 单步执行

6.3. 4 使用监视窗口

6.3.5 其他的调试工具

6.3.6 调试dll

第三篇 多线程编程

第7章 windows系统的消息、事件和多任务

7.1 进程与线程

7.2 win32的内存管理

7.3 win32的消息

7. 3.1 win32的消息机制

7.3.2 windows的消息处理

7.3.3 消息分类和消息句柄

7. 3.4 消息陷阱

7.4 windows事件

7.5 发送消息与时间处理

第8章 tthread对象

8.1 在应用程序中使用多线程

8.2 线程的控制

8.2.1 线程的创建

8.2.2 线程的挂起和恢复

8. 2.3 线程的终止

8.3 设置线程的优先级

8.4 线程的调度

8.4.1 抢先式调度

8.4.2 非抢先式调度

8.5 测试线程代码的执行时间

8.6 设计一个简单的多线程

8.6.1 设计窗体

8.6.2 创建线程对象

8.6.3 添加事件代码

8.6.4 运行程序

8.7 复杂例程——利用多线程排序

8.7.1 设计窗体

8.7.2 程序实现

8.7.3 运行程序

8.8 多线程与数据库

第9章 多线程的管理

9.1 线程的局部存储

9.1.1 缓存线程对象

9.1.2 线程的局部变量

9.1.3 局部存储示例

9.2 多线程的同步

9.2.1 多线程的同步机制

9.2.2 使用synchronize方法

9.2.3 使用vcl类的lock对象方法

9.2.4 使用waitfor方法

9.2.5 利用windowsapi实现同步

第四篇 delphi 6的文件处理

第10章 文件处理

10.1 文件的输入/输出

10.1.1 文本文件的处理

10.1.2 类型文件的处理

10.1.3 无类型文件的处理

10.1.4 tfilestream类

10.1.5 应用举例

10.2 内存映射文件

10.2.1 内存映射文件的应用

10.2.2 创建/打开内存映射文件

10.2.3 创建文件映射对象

10.2.4 建立文件视图的映射

10.2.5 取消文件视图的映射

10.2.6 关闭文件映射对象

10. 2.7 内存映射文件的一致性

10.2.8 内存映射文件实例

10.2.9 一个文本搜索程序

10.3 目录和驱动器

10.3.1 获得可用的驱动器列表

10.3.2 获取驱动器信息

10.3.3 获取windows目录的信息

10.3.4 获取system目录所在位置

10.3.5 获取当前目录

10.3.6 在目录中查找文件

10.3.7 复制和删除目录树

10.3.8 获取文件的版本信息

第五篇 gui开发

第11章 坐标系统和映射模型

11.1 常用的坐标系统与坐标转换

11.1.1 屏幕坐标系

11.1.2 窗口客户区坐标系

11.1.3 逻辑坐标系

11.1.4 窗体坐标系

11.2 gdi坐标系统和映射模式

11.3 设置映射模式

第12章 图像显示与图形绘制

12.1 图像组件timage

12.1.1 timage组件的属性

12.1.2 timage组件的方法

12.1.3 timage组件的事件

12.2 timage组件的应用

12.2.1 timage组件在vcl库中的地位

12.2.2 timage组件应用举例

12.3 图形组件———tcanvas

12.3.1 tcanvas的属性

12.3.2 tcanvas的方法

12.3.3 tcanvas控件的事件

12.4 tcanvas控件应用举例

第13章 高级图形程序开发技术

13.1 编写绘画程序

13.2 编写动画程序

13.2.1 第一种实现:绘制一擦除法

13.2.2 第二种实现:tanimate组件的使用

13.3 制作字体动画

第六篇 多媒体应用的开发

第14章 创建媒体播放器

14.1 多媒体的基本概念

14.1.1 多媒体系统的层次结构

14.1.2 数字视频的基本概念

14.1.3 数字音频的基本概念

14.2 tmediaplayer(媒体播放器)组件

14.2.1 tmediaplayer组件概述

14.2.2 tmediaplaver组件的属性

14.2.3 tmediaplayer组件的方法

14.2.4 tmediaplayer组件的事件

14.3 制作媒体格放器

第15章 播放视频和音频

15.1 播放音频

15.1.1 用tmediaplayer播放wav文件

15.1.2 用playsound函数播放wav文件

15.2 播放视频

15.3 制作cd播放器

第七篇 组件、控件开发

第16章 组件开发

16.1 delphi组件编程概述

16.1.1 delphi可视组件类库

16.1.2 建立组件的起点

16.1.3 手工创建组件

16.1.4 测试未安装的组件

16.1.5 测试已安装的组件

16.2 面向对象技术

16. 2.1 组件的访问控制

16. 2.2 派送方法

16. 2.3 创建属性

第17章 组件设计

17.1 创建图形组件

17.1.1 创建和注册组件

17.1.2 公布继承属性

17. 1.3 增加图形功能

17.2 定制表格组件

17.2.1 创建并注册组件

17.2.2 发布继承的属性

17.2.3 改变初始值

17.2.4 调整单元格大小

17.2. 5 填充单元格

17.2.6 跟踪日期

17.2.7 浏览月和年

17.2.8 浏览日期

第八篇 网络编程

第18章 利用delphi 6设计web浏览器

18.1 浏览器的工作原理

18.1.1 url与域名系统

18.1.2 http协议

18.2 浏览器的设计

18.2.1 浏览器组件介绍

18.2.2 设计web浏览器

18.2.3 页面生成组件

第19章 设计web服务器

19.1 服务器工作原理

19.1. 1 internet组件

19.1. 2 服务器的调度与管理

19.2 应用层协议控件及应用

19.2.1 tnmftp

19.2.2 tnmudp

19.2.3 tnmnntp

19.2.4 xml

19.3 电子邮件系统的开发

19.3.1 tnmsmtp

19.3.2 tnmpop3

19.3.3 一个复杂的e-mail收发程序

Delphi实例开发教程》源代码包说明 __________________________________________________________________ (一)源代码程序包内容: 源代码程序包的目录结构如下: \(根目录) | |————Readme.txt(说明文件必须放在这个地方) | |————\本书大案例(目录) | | |————|————DataBase(目录,存放大案例的数据库文件为“date”和数据库连接文件TEST.UDL) | | |————|————Materials(目录,存放大案例的登录logo) | | |————|————EXE(目录,存放可执行文件,为channelplay.exe) | | |————|————Setup(目录,存放安装文件) | | |————|————Source(目录,存放源代码,这个目录可以进一步细分) | | |————|————|————code(保存源程序) | | |————|————|————dcu(保存中间编译文件) | | |————|————|————exe(保存可执行文件) 其中安装程序文件夹里面是本案例系统的安装程序,与程序源代码无关。用户既可以以它来安装信息搜索系统程序,也可以直接从setup文件夹中直接运行程序。(当然,两者前提是数据库配置好,具体的配置方法参考案例书第4章的案例分析与完善) 另外在source文件夹中还有三个文件夹,code,dcu与exe是在编写程序代码是为了方便管理而设置的(这里的exe文件夹中文件和大案例下的EXE文件夹一样)。在一般情况下,如果不对编写的delphi项目工程进行设置而直接保存到一个文件中,那么在运行程序代码是就会在此文件夹中产生中间编译文件和最后的运行程序。如此则这同一个文件夹中就不仅有项目文件、单元文件也会有在编译过程中产生的编译文件和最后程序等。这样就不方便程序的管理和查看。所以在编写delphi项目工程之前最后设置三个文件夹分别用于保存源程序代码、中间的编译文件和应用程序,以方便管理。(具体设置是先打开delphi7,选择[Project]->[options],打开一个对话框,directories/Conditionals页,在Output directory里填写保存应用程序的文件夹路径,在Unit Output directory填写保存中间编译文件的文件夹路径。这两个路径最后写与源程序代码文件夹相关的相对路径。如本书的项目工程,源程序代码保存在code文件夹中,那么Output directory里填写“..\exe”,而Unit Output directory里填写“..\dcu”。) (二)下面介绍大案例code文件夹里各个文件的内容和关系:(code文件夹里的几个文件夹都与本程序无关,可以删除) 1)ChannelPlayer.dpr-------本案例的工程文件 它说明项目中各个单元文件的运行创建,并启动生成应用程序 2)MainFrm.dfm-----------------主窗体的窗体文件 它保存软件主界面窗体所作的属性 MainFrm.pas------------------主窗体的单元文件 它保存与软件主界面窗体相关的程序代码 以下各组文件的内容可以参考本书的第二章的实例分析与完善 3)MaintainFrm.dfm---------------对已保存的定制进行修改维护的窗体文件 MaintainFrm.pas-------------对已保存的定制进行修改维护的单元文件 4)BrowserFrm.dfm----------浏览器的窗体文件 BrowserFrm.pas----------浏览器的单元文件 5)CustomSearchFrm.dfm-------实现定制搜索功能窗体文件 CustomSearchFrm.pas-----------实现定制搜索功能单元文件 6)DisplayFrm.dfm----------------设计显示和操作搜索信息界面的窗体文件 DisplayFrm.pas--------------设计显示和操作搜索信息界面的单元文件 7)DisplayFra.dfm------------显示的搜索到的网站的窗体文件 DisplayFra.pas------------显示的搜索到的网站的单元文件 8)InputFra.dfm--------------进行搜索前对一些基本输入控件处理的窗体文件 InputFra.pas---------------进行搜索前对一些基本输入控件处理的单元文件 9)RollingNewsFrm.dfm---------用于滚动新闻设置的窗体文件 RollingNewsFrm.pas---------用于滚动新闻设置的单元文件 10)SettingFrm.dfm-----------用于系统的设置的窗体文件 SettingFrm.pas-----------用于系统的设置的单元文件 11)SiteArrangementFrm.dfm---整理“站内搜索”子模块中用户设置的窗体文件 SiteArrangementFrm.pas---整理“站内搜索”子模块中用户设置的单元文件 12)SiteSearchFrm.dfm--------主要用于实现站内搜索的窗体文件 SiteSearchFrm.pas--------主要用于实现站内搜索的单元文件 13)SplashFrm.dfm-----------实现系统开始运行闪屏的窗体文件 13)SplashFrm.pas-----------实现系统开始运行闪屏的单元文件 14)ViewFra.dfm--------------设定查询数据库保存的搜索结果信息条件输入的窗体文件 ViewFra.pas--------------设定查询数据库保存的搜索结果信息条件输入的单元文件 15)ViewInfoFrm.dfm----------对数据库中信息查询的窗体文件 ViewInfoFrm.pas-----------对数据库中信息查询的单元文件 16)UnitSearch.pas-----------实现百度、新浪等搜索引擎线程定义的单元文件 以上是code文件夹的主要文件,也是本案例工程的所有代码文件,其中ChannelPlayer.dpr是工程文件,记录本工程的信息;其他的窗体都是在本系统程序使用时动态调用(各个文件的调用关系可以参考本书第一章实例分析与完善的概要模块设置部分)。code文件夹中其他文件是在程序编译运行时候有delphi7自动生成,用户可以不管。其中*.~后缀的文件是相应文件名的备份,它们也是由delphi7自动生成。 (三)source文件夹中dcu文件夹中保存的文件是程序在编译的时候生成的中间文件,它们都对应code文件夹中的每个*.pas单元文 件。 (四)source文件夹中exe文件夹的文件: ChannelPlayer.exe---是本项目工程运行是自动生成的可执行运用程序 (五)系统需求: 1. 硬件要求: 基本配置为: ¢ CPU:Intel Pentium II-class 300 MHz (Intel Pentium III-class 600 MHz recommended) 这表明需要至少300MHz的奔III处理器,笔者所使用的是雷鸟1G,应该说 性能还是可以的。 ¢ RAM:96MB(128MB recommended) 实际上,128M内存运行起来还是觉得不够,最好能够有256M以上内存。笔 者使用的是256M DDR内存。 ¢ Available hard disk space(for install):250MB ¢ Available hard disk space(post install):155MB 事实上,这个要求仅仅是针对安装delphi7所提出的 要求。 ¢ Video:800×600,256 colors 只要是14英寸显示器就可以达到这个要求。 ¢ CD-ROM:required 这只是目前计算机的标准配置,实际上,如果不是采用光盘安装的话,CD-ROM 根本就派不上用场。 ¢ Operating System:Microsoft Windows 2000(or up) ¢ Microsoft Internet Explorer 5.5(or up) 2. 本系统工程的开发环境 本信息搜索系统程序是在WindowsXP的Delphi7环境下开发编写的,并且通过测试。另外本系统也能在windows98,me,2000 的delphi7环境下开发编写。对于delphi的版本,虽然delphi6delphi7相差不大,但由于本系统的网络部分用到的一些网络控件在delphi6没有,所以如果想使用delphi6编写的程序员要用delphi6网络控件代替delphi7的网络控件。对于刚出的delphi8,由于它是基于net框架的,主要用于网页编写,编写应用程序的方式不一样,而且delphi7的很多控件都没有,所以一般不能在delphi8中开发运行(除非重新编写所有的代码)。 (六)注意事项: 本系统要注意开发环境的选取,如上面所说的,最好使用delphi7以下的版本,不能使用delphi8。另外还要注意系统程序所用到的数据库的设置,先是把数据库还原,然后设置TEST.UDL里的连接参数,使程序能与数据库建立关系。这样之后才能运行程序。最后,由于本系统是借助几大门户网站的搜索功能实现搜索,所以要注意这些门户网站的更新,根据它们的更新来更新本系统。 (七)技术支持信息: 本系统的运行与操作: 本系统在运行之前要先设置好与数据库的连接(参考第4章的实例分析与完善)。然后运行程序会出现一个主界面,界面中间是有关新闻的滚动。点击“定制搜索”功能可进入定制搜索界面,在界面的左边可以选择是搜索以前的关键字还是重新输入,如果重新输入着在“关键字”栏里填写关键字,然后选择相关设置就可以搜索。对于搜索到的信息可以直接单击进入网页,也可以右键点击选择不同的操作。保存搜索信息公能用于对本次搜索信息保存到数据库中。点击主界面的“查看信息”功能可以进入查看信息界面,其界面与定制搜索界面相识。 点击主界面的“滚动新闻”功能和“系统设置”功能可以设置主界面的新闻滚动和本系统的信息。 _________________________________________________________________ 技术支持的联系方式: 如果用户对于本系统程序有什么疑问可以发邮件到: hsw_gm@21cn.com tenny_2000@163.com sqwen@yeah.net kukocpoplee@tom.com Jingfei2000@21cn.com _________________________________________________________________
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值