基于C++Builder的固话伴侣系统开发-毕业论文_第1页
基于C++Builder的固话伴侣系统开发-毕业论文_第2页
基于C++Builder的固话伴侣系统开发-毕业论文_第3页
基于C++Builder的固话伴侣系统开发-毕业论文_第4页
基于C++Builder的固话伴侣系统开发-毕业论文_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于 C+ Builder 的固话伴侣系统开发 华南师范大学华南师范大学 毕业论文毕业论文 论文题目:基于论文题目:基于 C+C+ BuiderBuider 的固话伴侣系统开发的固话伴侣系统开发 学生姓名:郑泽龙学生姓名:郑泽龙 学学号:号:2006310111220063101112 指导教师:胡晓晖指导教师:胡晓晖 院院 (系(系) :物理与电信工程学院:物理与电信工程学院 专专业:通信工程业:通信工程 毕业时间:毕业时间:20102010 年年 6 6 月月 3030 日日 基于 C+ Builder 的固话伴侣系统开发 中文摘要中文摘要 本系统采用 Access2003 来设计数据库,它方便实用,操作简单,并使用 C+ Builder 作为开发工具, 链接动态链接库以实现功能。 论文主要介绍固定电话伴侣系统的设计过程, 包括系统分析、数据库分析、数据库设计和所要完成的功能的程序开发过程,使用户对本 本系统有一个清晰、完整的了解。着重地说明了系统的数据库设计、动态链接库、难点技 术。 关键词:关键词:C+ Builder,Access 数据库,动态链接库,固话伴侣系统 基于 C+ Builder 的固话伴侣系统开发 ABSTRACTABSTRACT The system is based on facilitates Access database 2003 that has formidable function, and designed on Borland C+ builder platform, besides, used Dynamic Link Library under the compositive environment of C+ Builder 6.0. The discourse mainly introduce the whole process of design of the Fixed-line Telephone companion System, including system analysis、database analysis、database design and implementing of the functions, in order to make a clear picture for users. The system database design,Dynamic Link Library and technological difficulties are detailed. KeyKey words:words: C+ Builder, Access database,Dynamic Link Library, fixed-line telephone companion system 基于 C+ Builder 的固话伴侣系统开发 目目 录录 第一章 绪论.1 第二章系统设计开发技术.2 第一节 C+ BUILDER 介绍.2 第二节 ACCESS 数据库介绍. 3 第三章 系统分析与设计.4 第一节 系统分析.4 第二节 系统总体设计.4 第四章 数据库设计与实现.7 第一节 系统数据流图.7 第二节 数据库表.9 第三节 数据库的存取.12 4.3.1ADO 简介. 12 4.3.2 连接数据库.12 第五章 动态链接库.13 第一节 动态链接库介绍.13 第二节 DLL 的链接和使用. 13 5.2.1 创建和添加导入库(IMPORTLIBRARY).13 5.2.2 链接动态链接库.14 第三节 本系统链接的动态链接库.14 第六章 各大功能模块介绍.16 第一节 系统启动欢迎界面及用户密码保护功能的设计.16 第二节 通讯录管理模块的设计.17 第三节 短信管理模块.20 第四节 通讯记录管理模块及常用参数设置模块的设计.22 第五节 发送短信和拨打电话功能.23 第六节 打开*.TXT 文件的功能. 23 第七章 开发难点与技巧.23 第八章 开发体会.25 参考文献.26 致 谢.27 基于 C+ Builder 的固话伴侣系统开发 1 1 第一章 绪论 固定电话伴侣系统是属于电脑电话集成技术的一种应用。电脑电话集成(Computer Telephony Integration 简称 CTI)是计算机平台与传统电话网络的合理结合。使用这项 技术的最初目的是为了让电脑与电话相结合,是话音、传真和数据通信的集成。现今电脑 系统具有高度亲和的使用界面,具备数据库处理能力、路径选择及电话派分的智慧功能与 网际网络连线的功能。而电话系统则有电话转接及进行电话会议等功能。这两个系统经过 综合集成后,原先各自拥有的功能都将发挥地更加淋漓尽致。随着技术的发展和社会的需 要,电脑电话集成技术的各种不同应用方式不断涌现,固定电话伴侣系统就是其中一种。 随着通信行业的发展,电话的种类也越来越多。手机的出现,凭着它的便携性和实用 性,大大冲击了固定电话的用户市场。用惯了手机的人再用固定电话总有点不习惯, 因为 固定电话除了不能随身携带以外,还不能发信息,而且在查找对方电话号码时多少会感觉 不方便。那么如何将手机中的收发短信功能和“电话簿”功能及其他一些功能移植到固定 电话上呢?固定电话伴侣系统就能解决这个问题。固话伴侣系统是个人电脑与电话机的综 合,使用者在个人电脑上操作电话机,获得电脑电话综合所要求的各种功能,充分利用了 电脑的强大处理能力来提高固定电话终端的功能。这样,固定电话的功能通过电脑实现了 扩展,大大为用户提供了更为便捷的服务。 因此, 开发这样一套应用软件成为很有必要的事情,在下面的各章中我们将以开发一套 固定电话伴侣系统为例,谈谈其开发过程和所涉及到的问题及解决方法。 基于 C+ Builder 的固话伴侣系统开发 2 2 第二章系统设计开发技术 本次系统开发主要是软件部分的开发,然后结合市面上现有的固话伴侣接线盒实现与 固定电话的硬件连接。实现系统功能的应用程序在电脑上运行,已经连接了固定电话的固 话伴侣接线盒通过 USB 接口与电脑相连,这样就可以在电脑上操作电话机,扩展了固定电 话的功能。本系统的开发工具是 C+ Builder 6 和 Access 2003,同时调用动态链接库函 数来实现共同实现功能。 第一节 C+ Builder 介绍 在面向对象的可视化编程技术领域中,由 Borland 公司所开发的 C+ Builder 以其强 大的 RAD(Rapid Application Development,快速应用程序开发)功能而独树一帜。它能 够节省开发人员设计程序界面和实现底层支持的时间,可以将更多的精力花在程序的逻辑 设计上。而且 C+ Builder 比较稳定,可以完美地嵌入到 Windows 操作系统中,与 Windows 系统的兼容性非常好。 目前最新的产品是 C+ Builder 6,它充分利用了已经发展成熟的 Delphi 的可视化组 件库(Visual Component Library,VCL) ,结合了先进的可视化应用程序开发工具,功能 强大而且高效。Borland C+ Builder 6 最主要的特点表现在几个方面:1.提供了出色的 可视化应用程序开发环境。2.C+快速开发工具,将 C+开发提高到新的层次。3.具有强大 的数据库应用程序开发能力。4.提供了强大的网络编程功能。5.强大的 Web Service 程序 开发能力。 基于 C+ Builder 的固话伴侣系统开发 3 3 第二节 Access 数据库介绍 Access 是微软公司推出的基于 Windows 的桌面关系数据库管理系统(RDBMS) ,是 Office 系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块 7 种用来建立 数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、 报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户 不必编写代码,就可以完成大部分数据管理的任务。Access 能够存取 Access/Jet、 Microsoft SQL Server、Oracle,或者任何 ODBC 兼容数据库内的资料。熟练的软件设计 师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的进阶用户 则能使用它来开发简单的应用软件。 Access 是一种关系型数据库管理系统,其主要特点如下: (1)存储方式单一 (2)面向对象 Access 是一个面向对象的开发工具, 利用面向对象的方式将数据库系统中的各种功能 对象化,将数据库管理的各种功能封装在各类对象中。同时,这种基于面向对象的开发方 式,使得开发应用程序更为简便。 (3)界面友好、易操作 (4)集成环境、处理多种数据信息 Access 基于 Windows 操作系统下的集成开发环境, 该环境集成了各种向导和生成器工 具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计 数据查询、报表打印等可以方便有序地进行。 (5) Access 支持 ODBC (开发数据库互连, Open Data Base Connectivity) , 利用 Access 强大的 DDE(动态数据交换)和 OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌 入位图、声音、Excel 表格、Word 文档,还可以建立动态的数据库报表和窗体等。 基于 C+ Builder 的固话伴侣系统开发 4 4 第三章 系统分析与设计 第一节 系统分析 因为固定电话伴侣系统是以方便用户为基础,再在这个基础上为用户提供多方位的服 务,所以它要实现的功能是很多的,其中包括通讯录的管理,短信的收发功能及收发件箱 的管理,电话代拨的功能及通讯记录的管理,以及一些用户个人和系统的管理。另外,考 虑到系统还要与外部硬件进行连接,还需要设置硬件的初始化功能。 首先,用户要能够管理属于自己的通讯录,可以添加新的联系人,查询、修改、删除 联系人信息,可以给指定的联系人发送信息和拨打电话。在添加新的联系人时,考虑到同 一联系人会有多种联系方式,需要把每一联系人跟他对应的联系方式关联起来。而当通讯 录管理系统中联系人比较多时,用户想要找到自己需要的联系人就比较困难,所以,系统 提供了按姓名、公司、分组类别等条件进行搜索查询的功能,给用户带来方便。 其次,在短信管理方面,首先能够实现对指定用户发送短信的功能,然后再对发送的 短信进行进一步的操作,能够对发送成功和发送失败的短信分别进行存储、修改、删除、 转发等相关操作。另外,系统还提供了文件的导入功能,使用户能根据自己的需要把现有 的文档文件导入为短信内容,大大节省了时间。 再次,在通话管理方面,实现了在电脑上代拨电话的功能,还对通话的对象和时间进 行了存储,使用户能够方便地查看自己的通话记录,并对其进行管理。除此之外,系统还 设置了未接来电通知功能。当用户因为某种原因没能接听电话时,能够及时查看来电信息 做出处理。 除了一些必需实现的功能,考虑到用户信息的安全性,系统还设置了密码保护功能。 用户可以根据需要为系统设定密码,使非法用户不能登陆系统,提高信息的保密性和安全 性。 最后,系统提供了硬件初始化的功能,如果不对硬件进行初始化,系统的发送短信和 拨打电话功能都无法实现,因此这个功能是至关重要的。 第二节 系统总体设计 固定电话伴侣系统所要实现的基本功能如下: 1.系统用户登陆及身份验证 2.通讯录管理:包括新增、删除、查询、修改联系人信息,查询联系人信息可以按姓 名、按公司、按分组类别等条件查找。 3.收发短信息及短信息管理:能够给指定的用户发送短信息,能够接收由另一方发来 的短信息,设有收发信箱,能对发送和接收的短信息进行新增、查询、保存、修改、删除、 回复、转发等操作,并能把电脑文本文件导为短信息内容。 4.电话拨打及通讯记录管理: 能够给指定的用户拨打电话, 能够接听别的通讯端来电, 基于 C+ Builder 的固话伴侣系统开发 5 5 对拨出和接入的电话有通讯记录管理,设有未接来电通知功能,并对其进行回复。 5.系统管理:包括文件的导入,常用参数的设置 6.用户管理:包括开启用户密码保护、修改用户名及密码、取消用户密码保护、退出 登录 7.帮助:包括本系统的产品概述以及主要功能特点 8.关于:包括本系统的信息以及系统开发者的相关信息 图 3-1 系统实物连接图 基于 C+ Builder 的固话伴侣系统开发 6 6 新增联系人 关于 开始 登录界面 登录是否有错 Y N 结束 设定登陆密码没有设定登陆密码 系统启动界面 通讯录 短信管理 通讯记录 系统管理 发短信 用户管理 帮助 电话拨号 查询联系人 删除联系人 收件箱 发件箱 拨出电话 未接来电 呼入电话 参数设置 文件导入 修改密码 设置密码 退出系统 取消密码 草稿箱 回收站 发送失败 图 3-2 系统流程图 基于 C+ Builder 的固话伴侣系统开发 7 7 第四章 数据库设计与实现 第一节 系统数据流图 用户 0 登录 ID, Password 处理结果 1 2 3 4 通讯录管理 短信息管理 通讯记录管理 用户管理 数据库文件 图 4-1 系统数据 0 层图 联系方式 1.4 新增联系方式 1.5 删除联系方式 数据库从表文件 联系方式信息 结果 结果 删除条件 用户 1.1 新增联系人 1.3 查询联系人 1.2 删除联系人 数据库主表文件 联系人信息 结果 删除条件 结果 结果 关键字 主从关系 一一对应的关系 图 4-2 通讯录管理数据流图 基于 C+ Builder 的固话伴侣系统开发 8 8 发送失败 2.4 未发送的短信 2.5 删除信息 收件箱 2.12.2 删除信息 数据库文件 发件箱草稿箱回收站 2.3 发送成功的信息 2.62.72.8 发送失败信息 清空信息恢复信息接收的短信息 图 4-3 短信管理数据流图 未接来电 3.4 删除记录 1.5 删除记录 删除条件 结果 结果 删除条件 拨出号码 3.1 查看记录 3.3 查看记录 3.2 删除记录 数据库文件 号码信息 结果 删除条件 结果 结果 号码信息 呼入号码 3.5 查看记录 号码信息 结果 图 4-4 通讯记录管理数据流图 基于 C+ Builder 的固话伴侣系统开发 9 9 用 户 5.1 设置密码 5.3 取消密码 5.2 修改密码 数据库文件 输入新用户和密码 结果 结果 新 旧 密 码 结果 图 4-5 客户管理数据流图 第二节 数据库表 表 4.2.1 联系人信息表 字段名类型长度可否为空是否键值 姓名文本(16)N 性别文本(8)N 分组类别文本(0)N 公司文本(50)Y 职位文本(50)Y 国家/地区文本(50)Y 省/自治区文本(50)Y 城市/县文本(50)Y 家庭通讯地址文本(50)Y 单位通讯地址文本(50)Y 邮政编码文本(20)Y 电子邮箱文本(20)Y QQ 号码文本(20)Y 互联网址文本(50)Y 出生日期文本(20)Y 其他备注文本(50)Y 表 4.2.2 联系方式详情表 基于 C+ Builder 的固话伴侣系统开发 1010 字段名类型长度可否为空是否键值 姓名文本(16)N 性别文本(8)N 分组类别文本(0)N 公司文本(50)Y 职位文本(50)Y 电话号码文本(20)N 电话类别文本(16)Y 联系人信息表和联系方式详情表为主从关系表,其中联系人信息表是主表,联系方式 详情表是从表,关联的字段名为:姓名、性别、分组类别、公司、职位。 表 4.2.3 短信收件箱表 字段名类型长度可否为空是否键值 发件人文本(20)N 内容文本(140)N 日期日期/时间N 表 4.2.4 短信发件箱表 字段名类型长度可否为空是否键值 收件人文本(20)N 内容文本(140)N 日期日期/时间N 表 4.2.5 短信草稿箱表 字段名类型长度可否为空是否键值 收件人文本(20)N 内容文本(140)N 日期日期/时间N 表 4.2.6 短信发送失败表 字段名类型长度可否为空是否键值 收件人文本(20)N 内容文本(140)N 日期日期/时间N 基于 C+ Builder 的固话伴侣系统开发 1111 表 4.2.7 短信回收站表 字段名类型长度可否为空是否键值 发件人文本(20)N 内容文本(140)N 日期日期/时间N 表 4.2.8 常用短语列表 字段名类型长度可否为空是否键值 常用短语文本(140)N 表 4.2.9 拨出电话列表 字段名类型长度可否为空是否键值 拨出号码文本(16)N 日期日期/时间N 表 4.2.10 呼入电话列表 字段名类型长度可否为空是否键值 呼入号码文本(16)N 日期日期/时间N 表 4.2.11 未接来电列表 字段名类型长度可否为空是否键值 来电号码文本(16)N 日期日期/时间N 表 4.2.12 用户名密码列表 字段名类型长度可否为空是否键值 用户名文本(16)N 密码文本(10)N 本系统是在 Windows XP 下开发的,开发数据库使用的是 Access 2003。 1、新建一个空数据库,取名为“固话伴侣” 2、在 lib 中建立表联系人信息表、联系方式详情表、短信收件箱表、短信发件箱表、 短信草稿箱表、短信发送失败表、短信回收站表、常用短语列表、拨出电话列表、呼入电 话列表、未接来电列表、用户名密码列表 基于 C+ Builder 的固话伴侣系统开发 1212 第三节 数据库的存取 4.3.1 ADO 简介 ADO 即 Active Data Object 的简写(也称 OLE DB) ,是微软提供的用于访问数据库的 接口。在 C+ Builder 6 中提供了一组独立于 BDE 的 ADO 对象,通过这些对象可以实现对 各种数据源的访问,如关系数据库、文件系统、文本、图像等。 4.3.2 连接数据库 在 C+ Builder 中 ADO 用于访问数据库的对象有 ADO Connection 、ADO Command、ADO DataSet 、ADO Table 和 ADO Query。其中,ADO Connection 是用于创建 ADO 数据库连接 的对象,它是使用其他 ADO 对象的前提。ADO Command 对象即通常所说的命令行对象,它 用于定义要对数据源执行的一系列操作,执行结果不返回记录集。如 Update、Delete、 Insert 等 SQL 语句可以用该对象来执行。ADO DataSet 是 ADO 对象中非常重要的对象,其 主要特点是执行后能够返回记录集。它可以浏览记录、移动记录、添加、更改、删除记录。 而 ADO Query 则需要设置它的 Connection 属性或者 Connection String 属性,以用于连 接相应的数据库。 基于 C+ Builder 的固话伴侣系统开发 1313 第五章 动态链接库 第一节 动态链接库介绍 动态链接库是从 C 语言函数库的概念发展起来的。随着多任务操作系统的出现,采用 调用函数库的方法显得过于累赘和沉重。在这种形式下,人们提出了“允许一组函数的单 一拷贝为多种不同类型的程序所共享”的概念,这个概念的发展就形成了现在的动态链接 库。 在 Windows 系统中,动态链接库就是包含函数和数据的模块,这种模块是已经经过编 译的代码块,它可以为应用程序提供功能。动态链接库不需要重复编译或链接,一旦装入 内存,其地址自动被加载到调用进程的地址空间,可为任何正在进行的程序所调用,而不 必再将 DLL 的另一拷贝装入内存。DLL 通过定义两种类型的函数来实现,一种是导出函数 (exported),另一种是内部函数(internal).导出函数可为其他模块和 DLL 调用,而内 部函数只能在 DLL 内部使用,其对外部函数是不可见的。 根据装载方式的不同,可以把调用程序对 DLL 的链接方式分为静态链接和动态链接。 静态链接也称隐式链接,它是指在客户程序加载时同时装载其所有的 DLL;而在动态链接 方式下,客户程序是根据需要来装载 DLL 的,因此它可以随时装载和卸出。动态链接也称 显式链接。 第二节 DLL 的链接和使用 5.2.1 创建和添加导入库(Import Library) 5.2.1.1 创建导入库 在 C+ Builder 6 中,不管采用何种链接方式,都需要用于包装 DLL 的库导入库 (Import Library) 。 导入库的创建方法有两种: (1)在 DOS 提示符下用 implib 命令创建导入库。在这种创建方法中,首先使用 DOS 提示符进入到当前 DLL 工程所在的目录,然后输入 implib 命令。Implib 命令的格式如下: Implib 导入库名.lib动态链接名.dll (2)利用 C+ Builder 6 创建导入库。方法是,在 C+ Builder6 IDE 中,选择 Project Options.命令,在弹出的 Project Options 对话框中选择 Linker 选项卡,然后点选 Generate import library 复选框。这样执行对 DLL 程序的编译操作(按组合键 Ctrl+F9) 时,在产生动态链接库的同时会自动产生同名的导入库。 本系统中采用第一种方法创建了导入库 teldll.lib 和 usbdll.lib。 5.2.1.2 添加导入库 在导入库产生以后,如果一个工程要调用一个动态链接库,就必须将其对应的导入库 添加到该工程中。 在 C+ Builder 6 IDE 中选择 ProjectAdd to project.命令, 在弹出的 Add 基于 C+ Builder 的固话伴侣系统开发 1414 to project 对话框中“文件类型”下拉列表框中选择 Library file(*.lib)项,会出现.lib 文件。 选择指定.lib 文件并单击“打开”按钮,添加操作成功。 5.2.2 链接动态链接库 5.2.2.1 静态链接 DLL 静态链接 DLL 又称显式链接 DLL,它通过使用一个外部声明子句来使得 DLL 在应用程 序开始执行前即被装入。其中,DLL 函数又分为导入和导出,外部声明子句格式如下: 导入:extern “C” _declspec(dllimport) (要调用的函数); 导出:extern “C” _declspec(dllexport) (要调用的函数); 5.2.2.2 动态链接 DLL 动态链接 DLL 的方式一般使用 Windows API 函数 LoadLibrary 和 GetProcAddress 来 实现。动态链接提供了一种更为灵活的链接方式,它可以在运行时间内决定调用哪个 DLL, 或调用 DLL 中的哪个函数和过程。 即使在加载一个 DLL 失败后, 应用程序仍能够继续执行。 函数 LoadLibrary 用来加载 DLL, 而 GetProcAddress 则用来获取被加载的 DLL 中要调 用的那个函数的地址。 本系统中采用静态链接 DLL。 第三节 本系统链接的动态链接库 本系统采用静态链接的方式调用动态链接库 TelDLL.dll 和 USBDll.dll。其中 TelDLL.dll 为接口动态库, USBDll.dll 为访问 USB 的接口库(开发者不需要调用),但是必 须文件。 在 TelDLL.dll 中要调用的函数如下: 函数 5.2.1int_stdcall TelDLL_init(TOnDevChangedOnDevChanged, TOnMonocaseCMD OnMonocaseCMD, TOnKeyPressOnKeyPrss, TOnUsbSetIniSucceed OnUsbSetIniSucceed, TOnRevSMS OnRevSMS, TOnComePhone OnComePhone, TOnRevBillOnRevBill) 功能:调用装入程序,对各事件函数赋值。 函数 5.2.2int _stdcall IniUsbSet(char Ver, char SMSCenterNumber, char SMSComeNumber, bool 基于 C+ Builder 的固话伴侣系统开发 1616 第六章 各大功能模块介绍 第一节 系统启动欢迎界面及用户密码保护功能的设计 程序启动后,进入系统的欢迎界面。这一模块的主要功能是美化系统的外观设计,提 示用户目前所使用的软件是固话伴侣系统,表示欢迎。欢迎界面如图所示: 图 6-1 系统欢迎界面 欢迎界面启动完后,首先进入系统的用户身份验证窗口。这一模块的主要功能是作为 用户登陆验证,保护数据库的安全。如果用户为自己设置了保护密码,则必须为系统所允 许的用户才能进入本系统,否则拒绝用户进入。如果没有设置密码保护,则直接点击“确 定”按钮就可进入系统。用户身份验证窗口如图所示: 图 6-2 用户身份验证 用户可以在系统的操作部分对密码保护功能进行设定, 如启动密码保护、 取消密码保护 以及对已设定的用户名和密码进行修改。此时的界面如下: 基于 C+ Builder 的固话伴侣系统开发 1717 图 6-3 用户密码保护功能的设置 设置新的用户名和密码时,点击“开启密码保护” ,弹出以下窗口: 图 6-4 设置用户帐号密码 第二节 通讯录管理模块的设计 通讯录管理模块可以分为新增联系人,删除联系人和查询联系人三大功能。这些功能 的按钮都统一安排在通讯录管理界面的工具栏上,如图所示: 图 6-5 通讯录功能实现工具栏 一、新增联系人 点击“新增”按钮,就会弹出填写新联系人详情的窗口,如图所示: 基于 C+ Builder 的固话伴侣系统开发 1818 图 6-6 新增联系人窗口 新增联系人窗口包括基本联系信息和其他联系信息两个界面。其中基本联系信息中还 可以增加新的联系方式,点击“增加”弹出窗口如图 6-7 所示,添加其他联系信息的界面 如图 6-8 所示。 图 6-7 新增联系方式窗口 基于 C+ Builder 的固话伴侣系统开发 1919 图 6-8 新增其他联系信息窗口 二、删除联系人 选择想要删除的联系人,点击工具栏上的“删除”按钮,就会弹出窗口提示是否删除 联系人,如图所示: 图 6-9 删除联系人 三、查询联系人 当联系人数量比较多时,想要查找指定联系人,点击工具栏上“搜索”按钮,弹出“搜 索”窗口,在查询条件栏输入所要查找的联系人条件,点击“搜索”即可。 “搜索”窗口 如下: 基于 C+ Builder 的固话伴侣系统开发 2020 图 6-10 查询联系人 第三节 短信管理模块 短信管理模块包括有收件箱、草稿箱、发件箱、发送失败、回收站五个部分。这一模 块的功能主要是对收发的短信进行相关的操作,如回复、转发、编辑、删除等,模块界面 如下: 基于 C+ Builder 的固话伴侣系统开发 2121 图 6-11 短信管理模块 发送新的短信或编辑已发送的短信,都可以在以下界面进行: 图 6-12 编辑短信 为了方便用户,短信的内容还可以由用户自己导入文本文件生成或者通过添加常用短 语,系统中设有一个“常用短语管理”窗口,如图所示: 图 6-13 常用短语管理 基于 C+ Builder 的固话伴侣系统开发 2222 第四节通讯记录管理模块及常用参数设置模块的设计 通讯记录管理模块包括呼出电话,未接电话,呼入电话三部分。这一模块的功能主要 是使用户对自己通讯情况做一个详细的记录,方便以后有需要时进行查找。其界面如下: 图 6-14 通讯记录管理模块 系统接入外部硬件设备以后,就要对硬件设备进行初始化和参数设置,其窗口如下: 图 6-15 常用参数设置 基于 C+ Builder 的固话伴侣系统开发 2323 第五节发送短信和拨打电话功能 接入硬件设备,进行了硬件初始化和参数设置以后,通过系统就可以给指定的联系人 发送短信和拨打电话了。该功能界面如下: 图 6-16 发送短信和拨打电话 第六节 打开*.txt 文件的功能 在帮助中,有一项“主窗口源代码” ,使用者可以通过点击它直接打 开”source.txt”从而了解主窗口的程序代码,方便交流。代码段如下: void _fastcall TMainForm:N12Click(TObject *Sender) Stringfilename;filename=source.txt;ShellExecute(Handle,Open,filename.c_str(),0,0, SW_SHOW) 基于 C+ Builder 的固话伴侣系统开发 2424 第七章 开发难点与技巧 开发本系统中存在一些难点,主要包括以下几个方面: 一、用户密码保护功能的实现 用户可以根据自己实际的需要,设置属于自己的用户名和密码,用来保密自己的系统 信息。开始运行本系统时会出现用户登陆界面。如果用户开启了密码保护功能,则需要输 入正确的用户名和密码才可以进入系统。用户也可以关闭密码保护功能,这时登陆界面的 用户名和密码可以留空,点击“确认”直接进入系统。其中用户名和密码可以由合法用户 自由修改。这实际上是在数据库建立专门的用户帐号密码管理表来实现的。 二、一个联系人对应多个联系方式的实现 由于现在通讯发达,一个联系人往往拥有多种联系方式。在数据库中,联系人信息和 联系方式信息是分别存于两个不同的表的。想要把一个联系人与他的联系方式对应起来, 就要把联系人信息表和联系方式信息表设成主从关系,组成主从表。其中,联系人信息表 是主表,联系方式信息表是从表,再把两个表中相同的字段关联起来,就能实现一个联系 人对应多个联系方式了。 添加新联系人时,要先增加新的联系人信息并给予保存,才能在这个基础上添加新的 联系方式。因为给从表增加记录时,一定要对应着主表中的一条记录。在增加新的联系方 式时,要确保主表联系人信息表中一定要有记录,否则新的联系方式添加无效。 三、查询联系人的实现 当联系人数量比较多的时候,用户查找起来很不方便,查询功能就是为了方便用户查 找指定的联系人。在本系统中,为了提高查询效率,只对完全匹配的记录进行查询。在进 一步的完善中, 可考虑增加对模糊关键词的查询。 用户可以根据需要选择不同的查询条件, 当查询条件越多时,编程就越复杂。 四、文件导入功能的实现 为了节约用户的时间,系统提供文件导入功能使用户能导入指定的文档文件作为要发 送短信的内容。本系统是用 Open Dialog 组件来实现,简单易用。 五、动态链接库链接的实现 要实现发短信、打电话功能,就要调用动态链接库中的函数。这就要求明白这些函数 所实现的功能,并在源程序中添加相应的函数声明语句,增加了程序的复杂度。而且在调 用动态链接库时,一旦库中的某些参数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论