3VB实现网络通信.docx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.引言 目前已经有多种主流的网络通信软件,也有很多种制作网络聊天室的方法。而使用VB制作是最为简单易行的。使用VB实现网络通信方法大同小异,本次制作参考的文献资料基本方法基本都是使用Winsock控件编写服务器端、客户端通信程序,实现了对基于TCP /IP协议的、面向连接的流方式套接字网络通信程序设计。 本次设计同样使用了 VB 中的 Winsock 控件完成了本次网络通信软件的设计制作,实现了两台计算机之间的通信初步实现服务器和客户端的通信和实现客户端之间的通信。 2.Winsock 控件介绍 Winsock 控件对用户来说是不可见的,它提供了访问 TCP 和 UDP 网络服务的方便途径。为编写客户或服务器应用程序,不必了解 TCP 的细节或调用低级的 Winsock APIs。通过设置控件的属性并调用其方法就可轻易连接到一台远程机器上去,并且还可双向交换数据。 打开 Visual Basic6.0,点击“工程”→“部件”,弹出对话框,选择 Microsoft Winsock Control 6.0 。这时在工具箱中会多一个控件,这就是 Winsock 控件,现在就可以开始使用它进行设计编程。 Winsock控件的常用属性:BytesReceived属性(接受数据的字节数), LocalHostName属性(本地主机名称),LocalIP属性(本地主机IP),LocalPort属性(本地主机端口),RemoteHost属性(远程主机名称),State属性(Winsock控件)(网络状态【连接、未连接】),Protocol属性(值为0-sckTCPProtocol 时使用 TCP/ IP 协议,为1-sckUDPProtocol 时使用UDP 协议),Name属性(控件的名称), RemotePort属性(ActiveX控件)(远程主机端口),Object属性。 Winsock 控件的常用方法:Accept 方法(接受 TCP 连接请求),Bind 方法, Close 方法(关闭 TCP 连接),Listen 方法(监听 TCP 数据),PeerData 方法(获得数据),SendData 方法(传输数据),GetData 方法(获得数据) Winsock 控件的常用事件:Close 事件(关闭连接),ConnectionRequest 事件 (连接请求),DataArrival 事件(数据到达),SendComplete 事件(数据传输完毕),SendProgress 事件(数据传输中),Error 事件(发生错误),Connect 事件 (建立连接)。 3.网络通信的实现 本次设计使用 TCP(数据传输协议)基础数据传输协议允许创建和维护与远程计算机的连接。连接两台计算机就可彼此进行数据传输。 如果创建客户应用程序, 就必须知道服务器计算机名或者 IP 地址 (RemoteHost 属性),还要知道进行“侦听”的端口(RemotePort 属性),然后调用 Connect 方法。 如果创建服务器应用程序,就应设置一个收听端口(LocalPort 属性)并调用 Listen 方法。当客户计算机需要连接时就会发生 ConnectionRequest 事件。为了完成连接,可调用 ConnectionRequest 事件内的 Accept 方法。 建立连接后,任何一方计算机都可以收发数据。为了发送数据,可调用 SendData 方法。当接收数据时会发生 DataArrival 事件。调用 DataArrival 事件内的 GetData 方法就可获取数据。 实现两台电脑之间的通信 新建工程将其缺省窗体命名为“frmA”;将窗体的标题改为“点对点通信 (一)”。在窗体中添加一个 WinSock 控件。在窗体中添加 3 个 TextBox 控件。默认其命名为 Text1、TxtOutput、TxtSend,并将其内容清空;将 TxtOutput 和 TxtSend 的 MultiLine 属性设置为 True,ScrollBars 属性设置为 2-Vertical。在窗体中添加 2 个 CommandButton 控件,并将它们的 Caption 属性分别修改为“设置”、 “发送”。在窗体上放四个 Label 控件,其命名默认为 Label1、Label2、Label3, 并将它们的 Caption 属性修改为“计算机名称(IP 地址)”、“接收信息”、“发送信息”。如图: 在代码窗口添加代码: Private Sub Command1_Click() With WB .RemoteHost = Text1.Text .RemotePort = 1002 .Bind 1001 End Wit

文档评论(0)

mbxy007 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档