预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第一节:Winsock控件的介绍 Winsock控件的作用简单说就是可以用于两台或多台机器间通信,这里不多说这个控件的作用了,因为在以后的介绍中我们会了解到这个控件的强大功能的,如可以用来做聊天软件等…… 废话不多说,来看看他有些什么重要的属性、方法和事件吧! 在VB6.0中的工具箱里默认情况下是没有这个控件的,添加方法如下:在工具箱上右击,选择[部件],然后在部件对话框中选择"MicrosoftWinsockControl6.0",后确定即可。如果没有这个复选框的话,请点击[浏览]按钮后在打开的[添加ActiveX控件]对话框选择MSWINSCK.ocx后选择打开,再点确定即可。Winsock控件在工具箱中图标为。 Winsck的主要属性: 属性名说明BytesReceived返回接收的数据,可以用GetData方法来获取它LocalHostName返回本机名LocalIP返回本机IPLocalPort返回或设置本机所用的端口,如果为0则为随机产生Protocol返回通信所用的协议RemoteHostName返回通信对方的计算机名RemoteHostIP返回通信对方的IPState返回Winscok的当前状态,取值如下 sckClosed(常量为0):关闭状态 sckOpen(常量为1):打开状态 sckListening(常量为2):侦听状态 sckConnectionPending(常量为3):连接状态 sckResolvingHost(常量为4):解析主机中 sckHostResolved(常量为5):已解析主机 sckConnecting(常量为6):正在连接 sckConnected(常量为7):已经连接 sckClosing(常量为8):客户端正在关闭 sckError(常量为9):连接发生错误Winsock的主要方法: 方法名作用listen使服务器程序处于侦听状态,等待客户端的连接请求connect用于客户端向远程发送一个连接请求,语法:Winsock.connect[IP,Port]Accept用于服务器接收一个远程客户端的连接请求,语法:Winsock.AcceptrequestIDsendData用于向远程发送数据,语法:Winsock.sendData数据getData用于接收远程发送来的数据,语法:Winsock.getData变量Close关闭通信Winsock的主要事件: 事件名说明Connect当服务器接收客户端请求时,服务端发生的事件DataArrival有数据到达时发生的事件,可以在这个事件中来getData发送来的数据ConnectionRequest客户端用Connect方法时服务器发生的事件,可以在这个事件中来Accept一个连接请求SendProgress发送数据中发生的事件,可以在这个事件中来标示当前已经发送多少数据SendComplete发送数据完成发生的事件Error通信发生错误时发生的事件Close关闭通信时发生的事件这节我们详细介绍了Winsock控件的属性、方法和事件等,只要拥有这些,我们就可以编很多功能强大的软件了。在接下来的几课中我们将以实例来说明Winsock的应用。 第二节:Winsock聊天器实例 上一节我们介绍了Winsock控件,这节我们将以一个聊天器的实例来说说如何应运Winsock控件进行计算机之间的通信。 我也做了一个聊天器,程序HYPERLINK"http://www.17zixue8.com/htm/biancheng/VB/VBSoftware/CharTool.rar"点击这里下载。 这节课我们做了用于通信的服务端和客户端,在制作他们之前,先看看服务端和客户端是如何设计的:(注:要复制本页代码时要注意去掉不正确的字符如?号) 服务端的设计: 1、设置好localPort作为侦听端口 2、使用listen使服务端处在侦听状态 3、客户端发出连接请求后触发ConnectionRequest事件 4、在ConnectionRequest中用Accept方法来接收客户端的连接请求 5、收发数据 客户端的设计: 1、设置RemoteHost,即你要连接IP 2、设置好RemotePort,即通信的端口号,要与服务端的一致 3、使用Connect方法向服务端发出连接请求 4、如果服务端同意连接请求则触发Connect事件 5、收发数据 服务端的制作: 界面如下: 服务器设计第一、二步的实现(窗体的Load事件): PrivateSubForm_Load()wskServer.LocalPort=1024'1、设置好localPort作为侦听端口wskServer.Listen'2、使用listen使服务端处在侦听状态EndSub 服务器设计第三、四