毕业论文.doc

【精品】VC++局域网的语音通信系统(论文+源代码)

收藏

资源目录
跳过导航链接。
【精品】VC++局域网的语音通信系统(论文+源代码).rar
VC++局域网的语音通信系统(论文+源代码)
毕业论文.doc---(点击预览)
局域网语音通信
ReadMe.txt---(点击预览)
newdata.txt---(点击预览)
data.txt---(点击预览)
Debug
ClientSocket.obj
ClientSocket.sbr
CMessg.obj
CMessg.sbr
Example2_ChatRoom.bsc
Example2_ChatRoom.exe
Example2_ChatRoom.ilk
Example2_ChatRoom.obj
Example2_ChatRoom.pch
Example2_ChatRoom.pdb
Example2_ChatRoom.res
Example2_ChatRoom.sbr
Example2_ChatRoomDlg.obj
Example2_ChatRoomDlg.sbr
ServerSocket.obj
ServerSocket.sbr
Sound.obj
Sound.sbr
StdAfx.obj
StdAfx.sbr
vc60.idb
vc60.pdb
res
Example2_ChatRoom.ico
Example2_ChatRoom.rc2
ClientSocket.cpp
ClientSocket.h
CMessg.cpp
CMessg.h
Example2_ChatRoom.aps
Example2_ChatRoom.clw
Example2_ChatRoom.cpp
Example2_ChatRoom.dsp
Example2_ChatRoom.dsw
Example2_ChatRoom.h
Example2_ChatRoom.ncb
Example2_ChatRoom.opt
Example2_ChatRoom.plg
Example2_ChatRoom.rc
Example2_ChatRoomDlg.cpp
Example2_ChatRoomDlg.h
resource.h
ServerSocket.cpp
ServerSocket.h
Sound.cpp
Sound.h
StdAfx.cpp
StdAfx.h
压缩包内文档预览:(预览前20页/共41页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:1639478    类型:共享资源    大小:4.16MB    格式:RAR    上传时间:2017-08-30 上传人:机****料 IP属地:河南
50
积分
关 键 词:
精品 vc 局域网 语音 通信 通讯 系统 论文 源代码
资源描述:
【精品】VC++局域网的语音通信系统(论文+源代码),精品,vc,局域网,语音,通信,通讯,系统,论文,源代码
内容简介:
- I - 摘 要 本论文讨论了 境下局域网 语音 聊天程序的 设计思 路和设计方法。其中网 络 通信部分采用流行的 P 协议。程序采用典型的 C/S(服务器 /客户端 )构架 , 用 程设计网络通讯。界面设计部分采用架。分析了服务器端应用系统软件的结构和功能,阐述了系统的实现方法和实现思路 。 硬件上只需要一块双 道的声卡(目前的声卡大多支持双 道)和一支耳麦,其余全部由软件编程实现。 论文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。重点的说明了语音通 信的设计思路、难点技术和解决方案。 关键字 : 局域网 ; 语音通信 ; C/S 构架 - to a P (FC On MA to MA by 1 开发环境简介 . 1 +程序设计 . 3 低层波形音频 . 4 第 2 章 络编程的研究 8 计算机网络的体系结构 . 8 P 的体系结构 . 9 客户机 /服务器模式 . 10 绍 . 11 基本概念 . 11 编程特点 . 12 本的 . 13 步选择机制 . 18 程原理 . 18 系统实现的功能及设计 要求 . 21 统实现的功能 . 21 计要求 . 22 第 3 章 系统分析与设计 23 计思想 . 23 面设计 . 25 件设计要点 . 26 户端 . 26 频数据处理的 . 27 框架程序 . 27 第 4 章 系统的实现 29 - 连接服务器 . 29 音处理的实现 . 30 第 5 章 系统运行效果及改进意见 33 系统运行结果 . 33 存在不足 . 33 未来形势 . 33 第 6 章 总 结 35 致 谢 36 参考文献 37 - 1 - 第 1 章 概述 21 世纪是以网络为核心的信息时代,它的主要特征就是数字化,网络化和信息化。而在“三网”即电信网,有线电视网和计算机网络中发展最快并起到核心作用的就是计算机网络了。计算机网络在目前主要是指按照网络协议以资源共享和互相通信为目的,将地理上分散并且独 立自主的计算机互相连接的集合。计算机和通信技术的紧密结合。通信和计算机的结合主要指两方面:一方面,通信为计算机之间的数据传递和交换提供了必要的手段;另一方面,数字计算技术的发展渗透到通信技术中,又提高了通信网络的各种性能。随着技术的发展和进步,进入 20 世纪 80 年代以来, 出现了一系列语音通信的软件,比如 及 等,但这些软件都功能完善、相对独立,不利于集成到自己开发的软件中,有时我们也希望将这种语音通信功能集成到自己的软件中,尤其当一个单位 的局域网用户分散在不同的房间时。 网络语音通信已经发展多年,早些年由于互联网接入主要以调制解调器为主,制约了网络语音通信的发展,今天,宽带接入越来越普及,语音应用完全没有问题,已经可以给人类带来最廉价的语音通信,但是目前只能限制在点对点通信。 本设计 给出一种灵活、简单的实现方法,采用基于对话框的方式编程,硬件上只需要一块双 道的声卡(目前的声卡大多支持双 道)和一支耳麦,其余全部由软件编程实现。程序在 000、 编译通过,在 T 100M 以太网上运行良好。 开发环境简介 我们是基于以下的软件环境: 以 操作系统 , 以 + 开发工具 。 000/目前主流图形化操作系统,运行各种各样的 作系统的个人计算机已在全球的家庭和办公环境中广泛使用,而越来越多的个人- 2 - 计算机具有 能和多媒体功能又推动了对各种各样功能强,速度快的应用软件的进一步需求。目前有一种对 取得的成功进行诽谤的气氛,然而, 成功加上它对标准化的承诺,使得有承诺的 程人员利用他们掌握的技术在全球范围内得到越来越大的回报,由于西方社会的承认和计算机已越来越深入到每个人的生活中,因而对他们的技术需求与日俱增,从而使得他们的回报、经济收入和其他各方面相应地取得了满意的结果。 + 司 推出的 面向对象的、功能强大的可视化软件开发工具,它将程序设计方法与可视的软件开发环境完美结合,受到众多程序设计人的员的喜爱。使用 +开发 用程序重要有两种方法,一种是 使用 供的 数;另一种是直接使用 供的 库。 +仅仅是一个编译程序,已增加了很多新的内容,它包含了综合基本类( ,可简化和加速 序的开发;还包括了完善的资源编辑程序,可以用来设计复杂的对话框、菜单、工具条、图象、现代 用程序所需的很多其他组件等。还有一个名为“开发工作室( 的优秀的集成开发环境,当你开发应 用程序时就可以用图形化的视图来查看该应用程序的结构。一种完全集成化的调试工具使你立即就可以查看程序运行时各方面的细节。这些仅仅是 + 拥有大量功能中的几个例子。利用 + 可以帮助你采用最新的 发成果去开发快速而功能齐全的、先进的应用软件。 在 + 包含了大量新功能:一些新的控件(例如,你可能在子邮件应用程序中日期选择器控件)目前已能应用到你自己的应用程序中。各种图象现在已能与组 合框中的项相关联,而且可以利用扩充的组合框控件将图象显示在组合选择框中和下列列表中。在 7 和 中已使用的一般的工具条和尺寸可调节的工具条都已集成在其类库中,以供你用于你自己的应用程序中。你可以在你自己的应用程序中使用 看 和 内容。 使用 我们几乎可以作任何事情,还可以撰写种各种类型的应用程序,动态链接库( 象, 序,- 3 - 用程序。程序的规模小到简单的个人数据库应用,大到复杂的企业的多层次分布式系统,都可以使用 行开发,其友好的集成开发界面,可视化的双向开发模式,良好的数据库应用支持高效的程序开发和程序运行,备受广大程序开发人员的好评。 功能强大的 以用来生成各种初始类型的应用程序框架,因而,即使你没有添加一行程序新的应用程序就可具有像 源管理器那样的多视图应用程序的所有功能。 基于组件的编程和分布式组件对象模型( 都是现代软件开发新的主流领域。 最新版本的 如 +程序设计 面向对象的方法学是要求按人们通常的思维方式建立问题领域的模型, 设计出尽可能自然表现求解方法的软件。所谓建立模型就是建立问题领域中事物间相互关系。而表现求解问题的方法就是人们思维方法的描述。在面向对象的设计方法中对象 (传递信息 (别表现事物和事物间的关系。类(继承 性 (描述人们思维方式的描述方法。方法 (在可进行的操作,这种对象、类、消息、方法的程序设计范式的关键在于对象的封装和继承性。通过封装 (将对象的定义和实现分开。通过继承性,体现了类与类之间的关系,以及由此带来的基本特征。下面将从面向对象的方法学方面对有关概念作简要介绍。 (1) 对象 我们把面向现实世界中的实体就称为问题空间的对象从动态的观点看,对象的操作就是对象的行为,从存储的角度看,对象是计算机内存中的一块私有存储区,在这块存储区中有数据、有 方法。在面向对象的程序设计中,对象是该系统的基本运行实体,对于每个对象而言,都有与该对象对应的方法,而与每个对象相关的方法,就是定义了该对象的操作。 (2) 消息和方法 在对象之间,消息是他们之间的唯一联系。在面向对象的程序环境中设计的- 4 - 程序,它的执行是依靠对象向消息传递来完成的。把所以的对象分为各种对象类,每个对象类都定义了一组方法 ,所谓方法就是允许在对象类上进行的各种操作。 (3) 类 在面向对象的程序设计中,对象是程序设计的最基本的单位,相似的对象可以并到一类中去,程序员只需定义一个类,就可根据这个类得 到若干个实例,其中每个实例就是一个对象。 (4) 继承性 继承性是自动地共享类、子类、对象中的方法和数据的一种机制,继承性个减少程序设计中编写代码的工作量,它不仅支持系统的可重用性,而且还促进了系统的可扩充性。 (5) 封装性 所谓封装是一种信息隐蔽技术,用户只能看到对象封装界面上的信息,而对象内部对用户透明,封装的目的是把对象的使用着和对象的设计着分开,使用着只需设计访问对象的消息。 (6) 多态性 当同样的消息可发送到父类的对象和它的子类的对象时,这就被称为多太性。由于多太性具有可表达对象的多个类的能力 。因此,它既与动态类型有关,又与静态类型有关。 (7) 动态聚束 一个程序经过编译,连接生成的可执行文件代码,其过程就是将执行代码聚束在一起,若这一过程发生在程序设计时,就称为动态聚束。面向对象语言常使用这一类聚束方式,它具有程序简单性和可扩充性等优点。 低层波形音频 本系统要实现声音的播放和发送,必须要处理波形音频。处理方法有很多,最简单的一种方法是使用 数。 一个只能够播放波形音频文件的函数,本程序中主要用到的都是比较低层的波形音频 面 介绍相关函数 。 (1)数 - 5 - 数可以播放一个由文件名、资源号或者是系统事件(者注册表中的别名)决定的波形音频数据 . (2) 构 ,其声明如下 : ; /数据缓冲区的大小 ; /用户数据 ; /循环播放的次数 ; /保留 声音的采集和播放都是在操作这个音频数据块结构,实际上主要用到的就是第一个成员变量 所以我们只要在分配缓冲区(内存)的同时相应分配据块结构,然后将缓冲区的指针 赋给对应的数据块结构的成员变量 样当一个缓冲区填满后,也就是一个音频数据块填满了,通过消息机制就可以在消息函数中进行处理和播放,播放完后又可通过消息函数把缓冲区再送给音频设备输入驱动程序,继续进行采集并播放,当你一次性分配多个缓冲区和数据块结构并赋给音频设备输入驱动程序后,至于把哪个缓冲区填满,然后再把哪个空缓冲区赋给设备输入驱动程序,不需人为干预,完全由 制,这就是一种用动态循环缓冲区实现话音的实时采集、播放的简单而巧妙的办法。实现步骤: 用 和 查看当前系统波形音频输入、输出设备; 按 1102516声道, 22K/S 的格式设置 构的成员变量,也可以改为其他 式; - 6 - 用 .) 和 .)分别调用 再次用 .) 和 .) 分 别 调 用数打开波形输入设备; 分别给音频数据块和音频数据缓冲区分配、锁定全局内存; 初始化音频数据块结构各成员变量,主要是将每个缓冲区指针赋给对应数据块结构中的缓冲区指针变量 调用 .) 和.)将音频数据块赋给输入设备驱动程序; 调用 .)函数开始录音。 录音开始后,每当有采样数据填满数据块后,设备驱动程序就会发消息用户窗口,相应的消息回调函数 .)对数据块中的采样数据进 行处理,然后就可以发送给输出设备进行回放,每当一个音频数据块播放完毕,设备驱动程序又会发出消息 应的消息回调函数 .)记录音频数据并经必要准备后重新发送给输入设备,以准备接收后续的采样数据。这样,最初为输入设备准备的音频数据块就在消息的控制下,在输入、输出设备间循环使用,无需人为控制实现了实时采集、处理和播放。 当结束通话时要关闭音频输入设备,这时音频设备驱动程序会发送息,可在相应的消息函数 录音开始后,每当有采样数 据填满数据块后,设备驱动程序就会发消息用户窗口,相应的消息回调函数 .)对数据块中的采样数据进行处理,然后就可以发送给输出设备进行回放,每当一个音频数据块播放完毕,设备驱动程序又会发出消息 应的消息回调函数 .)记录音频数据并经必要准备后重新发送给输入设备,以准备接收后续的采样数据。这样,最初为输入设备准备的音频数据块就在消息的控制下,在输入、输出设备间循环使用,无需人为控制实现了实时采集、处理和播放。 当 结束通话时要关闭音频输入设备,这时音频设备驱动程序会发送- 7 - 息,可在相应的消息函数 .)中清除赋给输入、输出设备的音频数据块。 - 8 - 第 2 章 络编程的研究 计算机网络的体系结构 为了将庞大而复杂的计算机网络中的各种问题简化,可以将它转化为若干个较小的局部问题,而这些问题就比较容易研究和解决。为了使不同体系结构的网络都能互连交换信息,所以人们提出将计算机在世界范围内互连成网的标准框架即计算机网络的体系结构,其中以 际标准化组织)的 放系统互连)和 P 标准最为流行。 分 7 层,由底向高分别是物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。而 P 共有四层。由底向高分别是网络接口层,网际层,运输层和应用层。两种体系的结构对比图 2层的作用和标准如表 1。 图 2P 与 系结构的对比 表 2 层的作用和标准 次 作用 标准 /协议 物理层 为数据链路层屏蔽掉各种媒体的差异, 规定计算机与煤体接口的标准 据链路层 数据链路的建立、维护和释放: 将物理层提供的比特流分制成 帧,并进行差错控制和流量控制 应用层 6 表示层 5 会话层 4 运输层 3 网络层 2 数据链路层 1 物理层 应用层 (各种应用层协议如: ) 传输层 际层 络接口层 - 9 - 网络层 确定从源端到目的端如何选择路径,路由选择 组交换协议, 输层 从会话层接收数据,在必要的时候把它们分成较小的单元,传递给网络层,保证到达对方时准确无误 话层 提供除了传输层的普通数据传送外,还提供一些增强服务。管理对话控制,同步。 示层 关心所传送的信息的语法和语义,数字压缩,加密技术。 应用层 为用户提供常见的应用进程协议标准,文件传输, 电子邮件,远程登陆等 P 的体系结构 在 使用的各种协议中,最重要的和最著名的就是两个协议,即传输控制协议 网际协议 们常提到的 P 并不一定是指 是表示 P 体系中共有四个层次,没有对 物理层和数据链路层做出规定,而只是将最底层取名为网络接口层。若再不考虑没多少内容的网络接口层,那么 用层,运输层和网际层。 P 的最高层是应用层。在这层中包括了远程登陆协议 件传送协议 一种是无连接的用户数据报协议 P 网际层的主要协议就是无连接的网际协议 网际协议 合使用的还有三个协议: 制报文协议 址解析协议 逆地址解析协议 在网络编程中,掌握端口的概念十分重要。端口:基于 P 协议的网络中,计算机都分配有一个 址,用一个 32 位二进制数来表示,正式的称呼是“ 址”。客户机需要通过 服务器通信时,必须指定服务器的 址和服务端口号。另外,服务器打算侦听接入客户机请求时,也必须指定图 个 址和一个端口号。在选择端口时,应特别小心,因为有些可用端口号是为“已知的”(即固定的)服务保留的,如文件传输协议和超文本传输协议,即 21 号端口)和 般为 8080 端口)。“已知的协议”,即固定协议,采用的端口由“互联网编号分配认证( 控制和分配, 0 - 中说明的编号。 从本质上说,端口号可分成 3 类:“已知”端口、已注册端口、动态和(或)私用端口。 “已知”端口 01023,由 制 ,是在 为固定服务保留的。 已注册的端口 102449151,由 出来的,供普通用户的普通用户进程或程序使用。 动态和(或)私用端口 4915265535。普通用户应用应选择 102449151之间的已注册端口,从而避免端口号已被另一个应用或系统服务所用。此外,4915265535 间的端口可自由使用,因为 些端口上没有注册服务。 客户机 /服务器模式 在 客户机 /服务器网络中(以下简称 C/S 结构),有一台或多台高性能的计算机专门为其他计算机提供服务,这类计算机称 为服务器;而其他与之相连的用户计算机通过向服务器发出请求可获得相关服务,这类计算机称为客户机。 C/S 结构是最常用、最重要的一种网络类型。在这种网络中,多台客户机可以共享服务器提供的各种资源,可以实现有效的用户安全管理及用户数据管理,网络的安全性容易得到保证,计算机的权限、优先级易于控制,监控容易实现,网络管理能够规范化。但由于绝大多数操作都需通过服务器来进行,因而存在工作效率低、客户机上的资源无法实现直接共享等缺点。 C/S 结构的网络性能在很大程度上取决于服务器的性能和客户机的数量。服务器是一台速度快、存 储容量大的计算机,可分为文件服务器、远程访问服务器、数据库服务器、打印服务器等。需要指出的是,在一些小型局域网中,一台服务器机上可以同时运行多个服务器软件,也就是说,它们可以向网络上的客户提供多种不同的服务,如邮件服务、 务等。服务器需要专门的技术人员对其进行管理和维护,以保证整个网络的正常运行。 随着 术的发展与应用,出现了一种对 C/S 结构的改进结构,即浏览器 /服务器结构( B/S)。在这种结构中,用户的操作可完全通过 览器实现。 - 11 - 绍 基本概念 网络编程的规范 得到广泛应用的、开放的、支持多种协议的网络编程接口。从 1991 年的 到 1995 年的 过不断完善并在 公司的全力支持下,已成为 络编程的事实上的标准。 网际协议( 一种用于互联网的网络协议,已广为人知。它可广泛用于大多数计算 机操作系统上,也可用于大多数局域网 如办公室小型网络)和广域网 如说互联网)。从它的设计看来, 一个无连接的协议,并不能保证数据投递万无一失。两个上层协议( 赖 议进行数据通信。 如果希望在 通过 议建立网络应用程序,则需要使用 接口编程技术。 套接口,就是一个指向传输提供者的句柄。 ,套接口不同于文件描述符,所以它是一个独立的类型 述定义了一个 网络编程界面,它是从 基础上发展而来的,为 P 提供了一个 的套接字规范,除与 全兼容外,还包括一个扩充文件,通过一组附加的 A 现 (即事件驱动 )的编程风格;而 是在 进行网络应用程序设计的接口。 配域中的 P 协议定义了络编程规范,融入了许多 新特点。使用 目的是使用户在网络协议上工作而不必对该网络协议有非常深入的了解。此外,编写的程序还可被迅速地移植到任何支持 网络系统中去。 英文中是插座的意思,它的设计者实际上是暗指电话插座。因为在 境下编程很像是模拟打电话, 址就是电话号码,要打电话,需要电话插座,在程序中就是向系统申请一个 后两台机器上的程序“交谈”都是通过这个 进行的。对程序员来说,也可以把 成一个文件指针,只要向指针 所指的文件读写,就可以实现双向通信。 - 12 - 供了一种可为指定传输协议打开、计算和关闭会话的能力。在, P 上层模型在很大程度上与用户的 用有关;换言之,用户的 用控制了会话的方方面面,必要时,还会根据程序的需要格式化数据。 套接口有三种类型:流式套接口、数据报套接口及原始套接口。 流式套接口定义了一种可靠的面向连接的服务(利用 议),实现了无差错无重复的顺序数据传输。数据报套接口定义了一种无连接的服务( 议),数据通过相互独立的报文进行 传输,是无序的,并且不保证可靠和无差错。原始套接口允许对低层协议如 接访问,主要用于新的网络协议实现的测试等。 在 络七层协议中, 要负责的是控制数据的输入和输出,也就是传输层和网络层。 蔽了数据链路层和物理层,它的出现给 的网络编程带来了巨大的变化。 编程特点 在网络通信中,由于网络拥挤或一次发送的数据量过大等原因,经常会发生交换的数据在短时间内不能传送完,收发数据的函数因此不能返回的现象,这种现象叫 作阻塞。 有可能阻塞的函数提供了两种处理方式 阻塞和非阻塞方式。在阻塞方式下,收发数据的函数在被调用后一直要到传送完毕或者出错才能返回;在阻塞期间,除了等待网络操作的完成不能进行任何操作。对于非阻塞方式,函数被调用后立即返回;当网络操作传送完成后,由 应用程序发送一个消息,通知操作完成,此时可以根据发送的消息传出的参数判断操作是否正常。 在编程时,应尽量使用非阻塞方式。因为在阻塞方式下,用户可能会因为长时间的等待而失去耐心继而关闭应用程序的主窗口,这样当网络操作的函数从动态链接库中返回时,主程序已经从内存中删除,可能会造成内存的异常。虽然现在的操作系统已经可以从系统级正确地处理这种内存问题,但是仍然需要我们关注这种情况的发生。 - 13 - 本的 面将介绍一些常用的 (1): 初始化。 【 函数原型 】 式 提供,为了完成一系列初始化操作,每一个使用应用程序都必须进行 函数调用,并只有在成功地完成调用之后才能使用 对此函数说明如下。 参数 示欲使用的 本;这是一个 型的整数,它的高位字节定义的是次版本号,低位字节定义的是主版本号。 向 料的指针。 传回值:成功返回 0。 失败返回如下可能值。 示网络设备没 有准备好。 版本信息号不支持。 一个阻塞式的 在于进程中。 已经达到 用量的上限。 是一个有效的指针。 次函数是应用程序调用 的第一个,也唯有此函数成功后,才可以再调用其他 函数。 (2): 创建一个 【 函数原 型 】 所有的通信在建立之前都要创建一个 函数的功能与文件操作中的似。 地址族),一般都填 示是在 类型,当采用流连接方式时用 数据报文方式时用 般都为 0,表示用对两种数据类- 14 - 型的 别采用缺省的 输协议。函数的返回值是由 实际就是个整型数据在 建成功时,代表 配给程序的 号,后面调用传输函数时,就可以把它像文件指针一样引用。如果 立失败,返回值为 (3):创建的 定通信对象。 【 函数原型 】 s, 成功创建了 后,就应该选定通信 的对象。首先是自己的程序要与网上的哪台计算机通话;其次,在多任务的系统之下,该台计算机上可能会有几个程序在工作,必须指出要与哪个程序通信。前者可以通过 网络 址来确定,而后者是由端口号来确定。用端口号来表示同一台计算机上不同的应用程序,端口号可以为 065536,不同功能的通信程序使用不同的端口号,这样一台计算机上可以有几个程序同时使用一个 址通信而不互相干扰, 址与端口号的关系好象电话总机号码与分机号码的关系一样。在 , 1024以下的端口号已经被一些常用的网络服 务如 1)、 3)等占用。所以,在编制通信程序时,我们指定大于 1024 的端口号。要注意的是 端口号是相互独立的,可以使用相同的端口号而不会相互干扰。 在 函数中,参数 s 是上一步创建好的套接字。 指向描述通信对象地址信息的结构体的指针, 该结构体的长度。 定义如下: ; ; 其中 常被设成 指 址; 主要是使该结构的大小和 构大小相同 (构由一个无符号 和一个长度为 14 的 数组- 15 - 构成,这个结构一共是 16 个字节 ),在 添加这个长度为 8 的数组,使 长度也为 16(2+2+4+8),这样做的目的是使地址操作更方便。 (4): 设置等待连接状态。 【 函数原型 】 s, 对于服务器的程序,当申请到 指定通信对象为 后,就应该等待一个客户机的程序来要求连接。 就是把一个 置这种状态的函数。 参数 等待连接队列长度,可取 15。如果当某个客户程序要求连接之时,服务器已与其他客户程序连接,则后来的连接请求会被放在队列中,等待 服务器空闲的时候再与之连接。当队列达到指定长度( 值)时,再来的连接请求都将被拒绝。 (5): 接受连接请求。 【 函数原型 】 s, 当没有连接请求时,对于阻塞方式,就进入等待状态,直至有一个请求到达为止。 在接收到连接请求之后,会为这个连接建立一个新的 与对方通信,并把它作为返回值。新建的 原来的 相同的 特性,包伙断口号。原来的 释放,用于继续等待其他的连接请求。而新生成的 是与客户端进行通信的实际 以一般将参数中的 听” 只负责接受连接,而不负责通话;而对于 数返回的 它称做“会话” 只负责与客户端通话。参数中的指针 来返回客户机的 构体,通过 得到客户机的 址和连接端口。具体内容见 函数。 注意: 、 和 函数一般都用于服务程序,属于被动等待的函数。 对客户程序,要主动提出连接请求,应使用 函数。 【 函数原型 】 s, - 16 - 其中 s 是刚才建立的 含义与使用方法与 相同,用来指定通信对象。如果连接失败,该函数会返回 (6)(): 发送、接送数据。 【 函数原型 】 s, s, s 是连接用的。 发送或接收的数据包及其长度,参数 。 函数实际上是读取 函数发过来的
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:【精品】VC++局域网的语音通信系统(论文+源代码)
链接地址:https://www.renrendoc.com/p-1639478.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!