基于VB的点对点通信程序的设计

基于VB的点对点通信程序的设计

ID:47037775

大小:103.00 KB

页数:9页

时间:2019-07-04

基于VB的点对点通信程序的设计_第1页
基于VB的点对点通信程序的设计_第2页
基于VB的点对点通信程序的设计_第3页
基于VB的点对点通信程序的设计_第4页
基于VB的点对点通信程序的设计_第5页
资源描述:

《基于VB的点对点通信程序的设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于VB的点对点通信一、设计目标用VisualBasic编程,实现双机点对点通信,能将键盘上输入的数据发送到另一台计算机上;能将接收到的数据显示到屏幕窗口内。二、设计原理和方法首先应该建立两个应用程序,一个作为服务器,一个作为客户端,通过Winsock控件来实现双机的点对点通信。Winsock控件是VB5.0的新增功能,它解决了以往应用VB编程时网络中应用程序之间无法实现点对点通信的难题。利用Winsock控件可以与远程计算机建立连接,并通过用户数据报文协议(UDP)或传输控制协议(TCP)进行数据交换。这两种协议都可以用来创建客户与服务器应用程序。1)在使用Winsock控件时,首先需要

2、考虑使用什么协议。TCP协议控件是基于连接的协议,可以将它同电话系统相比。在开始数据传输之前,用户必须先建立连接,适用于传送大容量、需要安全性保证的数据文件。UDP协议是一种无连接协议,两台计算机之间的传输类似于传递邮件。消息从一台计算机发送到另一台计算机,但是两者之间没有明确的连接。另外,单次传输的最大数据量取决于具体的网络。但本设计中要实现收发数据时,应用程序需要得到客户端或者服务器的确认信息,而且点对点通信要求通信质量高,所以选择TCP协议,即客户端和服务器加入的控件协议均设置为sckTCPProtocol。TCP协议是一个面向连接、全双工、可靠的、按序传送的传输层协议,允许创建和维

3、护与远程计算机的连接,连接的计算机可彼此进行数据传输。如果创建客户应用程序,就必须知道服务器计算机名或者IP地址(RemoteHost属性),还要知道进行“侦听”的端口(RemotePort属性),然后调用Connect方法。如果创建服务器应用程序,就应设置一个收听端口(LocalPort属性)并调用Listen方法。当客户计算机需要连接时就会发生ConnectionRequest事件,为完成连接,可在ConnectionRequest事件中调用Accept方法。建立连接后,任何一方都可以通过SendData发送和接收数据,并借助GetData把自己的数据分离出来。传送数据时,需要先设定客

4、户机的LocalPort属性,服务器则只需要把RemoteHost属性设定为客户机以太网的地址,并设定与客户机LocalPort属性相同的端口地址,借助SendData方法开始发送消息。客户机则在GetData事件中通过DataArrival事件分离出发送的信息。2)Winsock控件的工作原理:客户端向服务器端发出连接请求,服务器端则不停地监听客户端的请求,当两者的协议沟通时,客户端和服务器端之间就建立了连接,这时客户端和服务器端就可以实现双向数据传输。一个连接的生存周期包括以下几步:1.服务器应用程序监听一个特殊的窗口,2.客户程序请求和服务器程序建立连接,3.服务器程序接受连接,4.

5、数据在客户程序和服务器程序之间传送,5.客户程序或服务器程序关闭连接。3)Winsock控件的主要方法:Listen:将其设置为聆听模式,才有可能接收另一方的连接请求;Close:将终止双方的连接,而且对方也会引发close事件。SendData:将数据传送给远程计算机,一般传送字符串数据时,只要将字符串当成自变量传送即可,如果是二进制数据的话,传输数据就必须以字节数组的方式储存;GetData:截取目前的数据块,将其存储在参数所定的变量中;4)Winsock控件的编程参数:1.LocalHostName属性:返回本地计算机的IP地址,格式是IP地址加点字符串(xxx.xxx.xxx.xx

6、x),在设计时是只读的,而且是不可用的。2.LocalPort属性:返回或者设置所用到的本地端口。在设计时是可读/可写的,而且是可用的。对用户说,该属性用来指定发送数据的本地端口。如果应用程序不需要特定端口,则指定0为端口号。在这种情况下,控件将选择一个随机端口。在建立起连接之后,这就是用于TCP连接的本地端口。3.Protocol属性:返回或设置Winsock控件所使用的协议,本设计中选用TCP协议,Protocol值为0。4.RemoteHostIP属性:返回远程计算机的IP地址。5.RemotePort属性:返回或设置要连接的远程端口号。Port为要连接的端口,只要不是特定的端口,都

7、可以,但是要确保客户端和服务器的端口设置一致。5)Winsock控件的主要事件1.connectionrequest:请求连接时产生2.connect:接受连接时产生3.close:关闭连接时产生4.dataArrival:发送数据产生5.error:请求连接失败时产生6)用Winsock控件设计应用程序VB6.0通过Winsock控件提供传输服务原语,传输服务原语包括:LISTEN、CONNECT、SEND、RECEI

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。