一个Windows下基于电话线路的数据通信程序的设计与实现
摘 要
电话网络是最大的通信网络,但是我们通常只是用来进行语音传输。为了更好的发掘电话网络的潜力,以及解决一些在没有互联网地区的数据的传输需要,开发一种可以通过电话线路进行数据传输的软件是很有必要的。http://www.16sheji8.cn/
微软的电话应用程序接口(TAPI)是一种标准的应用程序接口(API),使得个人电脑能够通过运行微软的 Windows系统来使用电话服务。TAPI里面封装了所有的对MODEM进行操作的AT指令,从而我们只需要调用TAPI的函数而不需要知道底层的具体操作就可以执行一个呼叫和应答一个呼叫,以及其他的线路操作,从而快速开发出一个基于Windows平台的通过电话线路进行数据传输的程序。
本文介绍了开发次程序需要的理论基础包括Windows平台软件开发的基础、TAPI的概述、TAPI的基本概念。详细的介绍了软件开发的的思路和流程,阐述了整个呼叫的生命周期内的线路上所产生的状态消息,以及依据这些消息而应该进行的具体操作。根据软件开发的思路的指导以及整个线路消息为程序开发的脉络,本文最后介绍了一个可以在Windows下面拨打对方的电话号码,当双方连通后可以通过电话线路进行数据传输的程序的编码开发过程,并且最后程序进行了测试。
关键词: Windows;电话线路;数据通信;TAPI
The Design and Implementation of a Telephone-Line Based Communication Program in Windows Operating System
Abstract
The telephony network is the largest communications network, and it's generally used for voice transmission. To better utilize the advantages of the telephony network and meet the need of data transmission in places where Internet is inaccessible, it is definitely necessary to develop a software which could transmit data over existing telephone lines. http://www.16sheji8.cn/
Microsoft's telephone Application Program Interface (TAPI), a standard application program interface (API), can help personal computers running Microsoft's Windows system 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 help 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 then 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 other's phone numbers, when the two sides can connect 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 前言 1
2 设计开发的基础理论 1http://www.16sheji8.cn/
2.1 WINDOWS SDK 简介 1
2.2 WINDOWS 程序的基本结构 1
2.2.1 概述 1
2.2.2 消息处理函数 1
2.2.3 窗口的建立 2
2.2.4 消息循环 2
2.3 MODEM的控制 3
2.4 TAPI 通信编程 3
2.4.1 TAPI的含义 3
2.4.2 TAPI的体系结构 4
2.5 TAPI的基本概念 4
3 程序设计思想与流程 6
3.1 使用TAPI开发的基本思路 6
3.2 各功能模块的设计 8
3.2.1 TAPI的配置阶段 8
3.2.2 TAPI的连接阶段 8
3.2.3 数据传送阶段 9
3.2.4 关闭连接阶段 10
4 编码实现 10http://www.16sheji8.cn/
4.1 程序主类的的定义 10
4.2 线路操作的实现 11
4.3 呼叫的发起和应答的实现 12
4.4 数据操作的实现 13
5 软件测试 14
结 论 14
参考文献 14
致 谢 16
声 明 17
1 前言
当今计算机网络十分普及,但仍有不少地区无法安装网络,相比之下电话线网比internet发达很多,我们用的宽带也是在电话线网的基础上建立起来的。因此在网络不发达地区,在无网络的情况下能用电话线进行数据通讯就十分有意义了。用电话线进行数据通讯不仅可以方便的接收和发送数据,比起internet数据通讯,安全性也是非常可靠的。MODEM曾经被广泛用于拨号上网,通过几年的迅速发展,已经取得了极大的成功。随着技术的发展和认识的提高,人们拓宽了MODEM 的应用领域,把它用于远程数据通信。MODEM 能从计算机接收串行数据,通过PSTN 电话网传送给另一端的MODEM ,所以使用MODEM 可以实现两台远程计算机的互联,就像组成一个广域网络系统一样。当两台计算机通过MODEM 拨号连接成功后,它们之间的通信就像串行通信一样方便。http://www.16sheji8.cn/
2 设计开发的基础理论
2.1 Windows SDK 简介
SDK即software develope kit(软件开发工具包),它包含了进行Windows软件开发的文档和API函数的输入库、头文件(因为API在动态链接库中,这些动态链接库是系统的组成部分因此不用再提供,而输入库和头文件则必须,这样才能在你的程序中使用API函数)。早期SDK是一个单独发放的包,现在在Visual C++和其他一些开发环境中已经包含了它。SDK编程就是直接调用Windows的API进行编程,API由上千个API函数组成。