用VB设计网络聊天室.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

用VB设计网络聊天室

第1章课程设计的目的

1.加深对计算机网络通信系统的工作原理的理解

通过编写计算机程序模拟网络通信的某些功能,理解并掌握网络通信系统的根本工作原理及工作过程。

2.提高网络应用的能力

学会运用网络语言以及网络协议设计小型网络。能对小型的网络应用系统进行分析,并能提出建网解决方案。

第2章课程设计分析及要求

2.1网络协议

Internet上的通讯协议是TCP/IP,Internet上数据传输协议主要有TCP和UDP,TCP是有连接协议,它要求计算机进行对话时必须先建立连接,保证数据传送平安到达目的地。UDP是无连接协议,它只是将信息送到网络上,并不检查数据是否到达了目的地。要进行实时会话,那么应该采用TCP协议。本程序采用的协议就是TCP协议。

2.2程序组成及简单原理介绍

程序分为效劳器端和客户端两局部。由于本应用程序使用TCP协议,因此决定应用程序是效劳器端程序。那么应用程序需要监听指定的端口。客户端程序启动后首先与效劳器建立连接,连接成功后,输入对方IP地址即可进入聊天室;效劳器端程序那么负责维护与每一个客户的连接和数据交换,并且记录下所有聊天内容,及人员名单。如果效劳器程序关闭,那么所有客户程序自动关闭。

2.3Winsock通信过程

1.Winsock控件

要实现两台计算机的对话,可以通过Winsock控件进行。而不需了解更多的数据传输细节,本程序就是通过Winsock进行的。

Winsock有多种属性、方法和事件,本文只列举出要使用的属性、方法和事件。

BytesReceived属性:返回接收到的〔当前在接收端缓冲区内〕数据的数量。使用GetData方法来获得数据。

LocalHostName属性:返回本地计算机名。在设计时是只读的,而且是不可用的。

LocalIP属性:返回本地机器的IP地址。在设计时是只读的,而且是不可用的。

LocalPort属性:返回或者设置所用到的本地端口。

RemoteHostIP属性:返回远程机器的IP地址.

Protocal属性:返回或设置WinSock控件所使用的协议——TCP或UDP。

State属性:返回控件的状态,用枚举型表示。在设计时是只读的,而且是不可用的。

SocketHandle属性:返回一个与套接字句柄对应的值,控件用套接字句柄同WinSock层通信。在设计时是只读的,而且是不可用的。

Accept方法:仅适应于TCP效劳器应用程序。在处理ConnectionRequest时使用这个方法接受新连接。

Bind方法:指定用于TCP连接的LocalPort和LocalIP。如果有多协议适配卡,就用这个方法。

Close方法:对客户机和效劳器应用程序关闭TCP连接或侦听套接字。

Listen方法:创立套接字并将其设置为侦听模式。仅适应于TCP连接。

PeekData方法:不从输入队列删除数据,除次之外与GetData相似。该方法仅适用于TCP连接。

SendData方法:将数据发送给远程计算机。

Close事件:当远程计算机关闭连接时出现。应用程序应正确使用Close方法关闭TCP连接。

ConnevtionRequest事件:当远程计算机请求连接时出现。

DataArrival事件:当新数据到达时出现。

SendComplete事件:在完成一个发送操作时出现。

Error事件:无论何时,只要后台处理中出现错误事件就会出现。

Connect事件:当一个Connect操作完成时发生。

2.聊天室程序应该包括一个效劳器程序和假设干个客户端进程,设计时应分别设计客户端程序和效劳器端程序。

首先设计一个客户端应用程序,窗口及其包括的控件如下图,各控件属性如表所示。在此之前应首先在Projict/Components页面中选择MicrosoftWindowsCommonControls6.0和MicrosoftWinsockControl6.0两项

控件

属性

属性值

Form1

Caption

效劳器端

Label1

Caption

待发送数据

Label2

Caption

已接受数据

cmdConnect

Caption

连接

cmdSendData

Caption

发送

cmdExit

Caption

退出

sbWinsockState

Width

4600

sktTCPChatClient

Rrotocal

0-sckTCPRrotocal

sktTCPChatClient

RemotePort

1001

3.设计一个效劳器应用程序,窗口及其包括的控件如下图,各控件属性如表所示。其他设置同客户端。

控件

属性

属性值

Form1

Caption

效劳器端

Labe

文档评论(0)

147****4268 + 关注
实名认证
内容提供者

认真 负责 是我的态度

1亿VIP精品文档

相关文档