毕业设计(论文)Windows下基于电话线路的数据通信程序的设计与实现.doc
《毕业设计(论文)Windows下基于电话线路的数据通信程序的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)Windows下基于电话线路的数据通信程序的设计与实现.doc(15页珍藏版)》请在三一办公上搜索。
1、Windows下基于电话线路的数据通信程序的设计与实现的设计与实现摘 要电话网络是最大的通信网络,但是我们通常只是用来进行语音传输。为了更好的发掘电话网络的潜力,以及解决一些在没有互联网地区的数据的传输需要,开发一种可以通过电话线路进行数据传输的软件是很有必要的。微软的电话应用程序接口(TAPI)是一种标准的应用程序接口(API),使得个人电脑能够通过运行微软的 Windows系统来使用电话服务。TAPI里面封装了所有的对MODEM进行操作的AT指令,从而我们只需要调用TAPI的函数而不需要知道底层的具体操作就可以执行一个呼叫和应答一个呼叫,以及其他的线路操作,从而快速开发出一个基于Windo
2、ws平台的通过电话线路进行数据传输的程序。本文介绍了开发次程序需要的理论基础包括Windows平台软件开发的基础、TAPI的概述、TAPI的基本概念。详细的介绍了软件开发的的思路和流程,阐述了整个呼叫的生命周期内的线路上所产生的状态消息,以及依据这些消息而应该进行的具体操作。根据软件开发的思路的指导以及整个线路消息为程序开发的脉络,本文最后介绍了一个可以在Windows下面拨打对方的电话号码,当双方连通后可以通过电话线路进行数据传输的程序的编码开发过程,并且最后程序进行了测试。关键词: Windows;电话线路;数据通信;TAPIThe Design and Implementation of
3、 a Telephone-Line Based Communication Program in Windows Operating SystemAbstractThe telephony network is the largest communications network, and its generally used for voice transmission. To better utilize the advantages of the telephony network and meet the need of data transmission in places wher
4、e Internet is inaccessible, it is definitely necessary to develop a software which could transmit data over existing telephone lines. Microsofts telephone Application Program Interface (TAPI), a standard application program interface (API), can help personal computers running Microsofts Windows syst
5、em to take use of telephone services. TAPI has encapsulated all AT commands for MODEM operation, which will only need users to call the TAPI function to initiate and answer a call, rather than to know the detail operation on the implementation, nor other operations on the lines. This would largely h
6、elp to develop a program through telephone lines for data transmission, on a Windows-based platform. The paper firstly describes the theoretical basis for the development of sub programs, including the software development basis on Windows platform, TAPI overview and its basic concepts. The paper th
7、en describes the detail ideas and processes on the software implementation. The paper also represents an entire call life cycle with its possible state messages, and the corresponding operations needed. Finally, on the one below in the Windows Call each others phone numbers, when the two sides can c
8、onnect through telephone lines for data transmission procedures for the development of the coding process, and in the final process of the test.Key words: Windows; telephone lines; data Communications; TAPI目 录论文总页数:17页1前言12设计开发的基础理论12.1Windows SDK 简介12.2Windows 程序的基本结构12.2.1概述12.2.2消息处理函数12.2.3窗口的建立
9、22.2.4消息循环22.3MODEM的控制32.4TAPI 通信编程32.4.1TAPI的含义32.4.2TAPI的体系结构42.5TAPI的基本概念43程序设计思想与流程63.1使用TAPI开发的基本思路63.2各功能模块的设计83.2.1TAPI的配置阶段83.2.2TAPI的连接阶段83.2.3数据传送阶段93.2.4关闭连接阶段104编码实现104.1程序主类的的定义104.2线路操作的实现114.3呼叫的发起和应答的实现124.4数据操作的实现135软件测试14结 论14参考文献141 前言当今计算机网络十分普及,但仍有不少地区无法安装网络,相比之下电话线网比internet发达很
10、多,我们用的宽带也是在电话线网的基础上建立起来的。因此在网络不发达地区,在无网络的情况下能用电话线进行数据通讯就十分有意义了。用电话线进行数据通讯不仅可以方便的接收和发送数据,比起internet数据通讯,安全性也是非常可靠的。MODEM曾经被广泛用于拨号上网,通过几年的迅速发展,已经取得了极大的成功。随着技术的发展和认识的提高,人们拓宽了MODEM 的应用领域,把它用于远程数据通信。MODEM 能从计算机接收串行数据,通过PSTN 电话网传送给另一端的MODEM ,所以使用MODEM 可以实现两台远程计算机的互联,就像组成一个广域网络系统一样。当两台计算机通过MODEM 拨号连接成功后,它们
11、之间的通信就像串行通信一样方便。2 设计开发的基础理论2.1 Windows SDK 简介SDK即software develope kit(软件开发工具包),它包含了进行Windows软件开发的文档和API函数的输入库、头文件(因为API在动态链接库中,这些动态链接库是系统的组成部分因此不用再提供,而输入库和头文件则必须,这样才能在你的程序中使用API函数)。早期SDK是一个单独发放的包,现在在Visual C+和其他一些开发环境中已经包含了它。SDK编程就是直接调用Windows的API进行编程,API由上千个API函数组成。2.2 Windows 程序的基本结构2.2.1 概述Windo
12、ws程序具有相对固定的结构,对编写者而言,不需要书写整个过程,大部分过程由系统完成。程序中只要按一定的格式填写系统留给客户的那一小部分。所需要完成的有:窗口类的定义、窗口的建立、消息函数的书写、消息循环。2.2.2 消息处理函数Windows程序是事件驱动的,对于一个窗口,它的大部分例行维护是由系统维护的。每个窗口都有一个消息处理函数。在消息处理函数中,对传入的消息进行处理。系统内还有它自己的缺省消息处理函数。客户写一个消息处理函数,在窗口建立前,将消息处理函数与窗口关联。这样,每当有消息产生时,就会去调用这个消息处理函数。通常情况下,客户都不会处理全部的消息,而是只处理自己感兴趣的消息,其他
13、的,则送回到系统的缺省消息处理函数中去。消息处理函数的原型如下:参数:窗口句柄,消息,消息参数,消息参数LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) /处理感兴趣的消息 switch (message) case .case./其他消息交给由系统提供的缺省处理函数return :DefWindowProc (hwnd, message, wParam, lParam) ;2.2.3 窗口的建立客户需要自己建立窗口,建立后会得到系统返回的窗口句柄(HWND),后继的针对窗口的操作都针
14、对句柄进行。1.注册窗口类建立窗口前,需要制定好这个窗口的相关属性,最主要的就是将自己定义的消息处理函数与窗口关联,其他的属性还包括:菜单、图标等等。这个属性指定步骤是通过指定窗口类来完成的。对于自己建立的窗口,这个窗口类需要自己制定,也即自己填充一个WNDCLASS结构,然后向系统注册。对于一些特殊窗口,如按钮等控件,他们的行为是系统制定好了的,所以不需要自己注册,直接使用对应的“窗口类”名称就行了。2.建立窗口建立窗口时,注册的窗口类名称作为参数传入。这样,当有针对该窗口的消息时,将调用“窗口类”中指定的消息处理函数,在其中得到处理。2.2.4 消息循环系统会将针对这个程序的消息依次放到程
15、序的“消息队列”中,由程序自己依次取出消息,在分发到对应的窗口中去。因此,建立窗口后,将进入一个循环。在循环中,取出消息、派发消息,循环往复,直到取得的消息是退出消息。循环退出后,程序即结束。2.3 MODEM的控制目前模拟电话线路被广泛用于数据传输。调制解调器(MODEM)被用来实现数字信号到模拟信号和模拟信号到数字信号的相互转换。MODEM 通过PSTN (public switched telephone network,公用交换式电话网)来传输数据。目前计算机控制调制解调器有两种方法:一种方法是向MODEM 发送AT 指令,另一种方法是使用TAPI (telephony applica
16、tion programming)即电话应用程序接口。AT 指令集是由Hays公司首先推出的用于控制自己开发的smart modem 系列产品的命令集合,AT 命令集推出后得到广泛的应用,很快其它生产调制解调器的公司也都使用与Hays 公司AT 指令集兼容的AT 指令集。开发者利用串行通信API 再加上基本的Hays 兼容的AT 命令,就可以实现对MODEM的控制。但这种方法在windows 中用起来很不方便。原因如下:许多MODEM 制造商已向标准的AT 指令集中添加了许多变种,这就使应用程序与市售的所有MODEM 保持完全兼容很困难。而 Windows 维护了一个数据库,其中包含了商用调制
17、解调器以及每个 MODEM 支持的 AT 命令集变种,使用 TAPI 则可以访问该数据库,所以使用标准TAPI函数生成呼叫和控制 MODEM 的应用程序不需要知道AT命令集的详细内容。2.4 TAPI 通信编程2.4.1 TAPI的含义计算机电话集成(Computer Telephony Integration,缩写CTI)是计算机技术和电信技术相结合的产物。电子通信行业配备了各种各样的硬件系统,仅仅收集这些系统的标准、文档和接口规范就是很复杂的任务,要设计一个考虑所有情况的任务就更加困难。为了减轻开发者的负担,Microsoft公司和Intel公司联合起来创建了Windows Telepho
18、ny API(TAPI)给应用程序编程者提供一个接口,并且允许应用程序无需改变就可以适应多种多样的电信系统。 TAPI是Microsoft公司的Windows开放式服务结构中的一部分,它包括两个接口:开发人员使用的应用程序接口和用于连接某种电话网络的接口。TAPI为通信应用程序提供控制通信的功能,包括数据、传真、语音,以及处理计算机与电话网之间的信号灯。 TAPI服务为通信应用程序提供了一种与设备无关的方法,避免了使用AT指令直接访问硬件可能造成的冲突,并且让应用程序可以与包括数字综合服务网(Intergrated Services Digital Network)在内的各种通信网络通信;同时
19、还提供了访问通信端口和设备的通用机制。这样,多个应用程序就可以共享这些设备,TAPI管理对各个设备的访问,让通用程序协调使用这些设备。TAPI的设计本身是可以扩展的,从而可以满足未来通信网络多方面的需求。2.4.2 TAPI的体系结构图1是TAPI体系结构示意图。作为中间层的TAPI DLL,提供对服务提供者的管理,并在服务提供者与应用程序之间进行信息传递。TAPI可以保证多个服务者和应用程序能够同时存在,并且不会发生相互冲突。图1 TAPI的体系结构在底层将TAPI和实际的电话硬件连接是TAPI服务提供者(TAPI Service Provider 缩写为TSP).TSP一般都由硬件生产厂商
20、提供。2.5 TAPI的基本概念(1) 设备 ID 设备ID是从零开始按顺序分配给每个设备的ID;也就是说,如果安装了4个线路设备,这些线路没备的设备 ID 相应为 0、1、2、3。(2) 长度变化的数据结构 TAPI使用的大多数的复杂数据结构是变长的数据结构。这些结构的组织如图二所示。最前面l 的3个域分别是dwTotalsize ,dwNeededsize 和dwUsedSize。在这三个域后面是固定长度的域,对每个给定的结构类型固定长度的域都具有同样的长度。一般而言,长度范围从0到300个字节或者更长字节的结构。存储在结构中的可变部分的信息总是通过相对于结构定长部分的一个偏移量来引用,以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 Windows 基于 电话 线路 数据通信 程序 设计 实现
链接地址:https://www.31ppt.com/p-3977237.html