论文部分内容阅读
摘 要:VB的网络编程主要是基于控件,以Winsock控件为主开发基于客户机/服务器模式(client/server,简称C/S)的网络聊天程序具有广泛的应用价值。
关键词:Winsock;网络聊天;客户机/服务器模式;网络编程
网络编程是计算机领域发展的一个流行趋势,而VB提供了一系列的网络编程控件,常用的VB网络编程控件有Winsock,Inernet Transfer,webBrower。下面介绍Winsock控件的具体应用。
1 基于Winsock控件的开发模式
Winsock控件采用的是客户机/服务器模式(Client/Server,简称C/S)。此模型包括客户机和服务器应用程序。客户应用程序向服务器应用程序提出请求服务,服务器程序侦听到了客户的请求后对客户的请求作出适当的响应,即对客户提供服务。
2 Winsocket控件详解
2.1 主要属性
LocalHostName:返回本机名字;LocalIP:返回本地计算机IP地址;LocalPort:返回或设置侦听端口;Protocol:返回或设置Winsock所用的协议(TCP或UDP);RemoteHost:返回或设置远程计算机的名称;RemoteHost IP:返回远程计算机的IP地址;RemotePort:连接套接字端口值;State:返回控件当前的状态。
2.2 主要方法
⑴Listen:用于服务器程序,等待客户访问;⑵Connect:用于向远程主机发出连接请求;⑶Accept:用于接受一个连接请求;⑷Senddata:用于发送数据;⑸Getdata:用来取得接收到的数据;⑹Close:关闭当前连接。
2.3 主要事件
ConnectionRequest:客户机向服务器提出请求服务时所触发的事件。通常与Accept方法一同使用,用来接受客户机的连接请求。
DataArrival:当客户端和服务器端有信息发送来时,就会触发该事件。它通常与GetData方法一同使用,通过GetData方法获取新到达的数据。
3 开发实例
网络程序由客户端和服务器两个程序组成,可以在同一台计算机上运行,也可以在网络上的不同计算机上运行。整个系统的运行机制:一是建立连接,主要过程是由客户端程序向服务器程序发出连接请求,服务端程序收到并接受请求,至此客户机与服务器间创建了数据交流的通道。二是开始通信,主要过程是当在客户机的“发送的信息”文本框输入文字时,服务器端的“收到的信息”文本框就会实时地显示相同的文字,反之亦然。
3.1 服务器程序设计
⑴程序界面设计
①创建一个“标准的EXE”工程。
②在窗体上添加Command、三个TextBox控件。名称分别为:发送方的文本框为Ts,接收方的文本框为Tr,服务器的IP地址文本框为TsIP。
③在窗体上添加Winsock控件,名称为winsocksv;将Protocol(协议)属性设置为0。
⑵代码设计
略。
在VB代码设计窗口中编辑相应的事件过程中设计代码,并成功编译服务器端程序,同时制作成.exe文件。
3.2 客户机程序设计
⑴程序界面设计
①创建一个“标准的EXE”工程,添加Winsock控件,
名称为winsock1,将Protocol(协议)属性设置为0。
②在窗体上添加两个Command、四个TextBox控件。
名称分别为:发送方的文本框为TxtS,接收方的文本框为
TxtR,Tc、Ts显示客户机和服务器的IP地址。
⑵代码设计
略。
在VB代码设计窗口中编辑相应的事件过程中设计代码,并成功编译客户端程序,同时制作成.exe文件。运行服务器和客户端的两个.exe文件,就可实现相互之间信息发送和接收。
此实例只能实现两个人进行网络聊天,若服务器程序做一下改动。即可实现一个人同时与多人聊天,把服务器界面添加两个Winsock控件,一个用来侦听网上请求信号,另一个为初始的连接口,采用动态控件数组的形式,以后当请求连接的客户增多时,可在这个控件的基础上动态增加,由于篇幅问题,详细代码略。上述的服务程序和客户机程序已编译成功。
上面的网络聊天程序,主要用到了Winsock控件。在本程序中,此控件选用TCP协议进行远程计算机之间的通信,即便对TCP/IP、TCP这些知识掌握不够,只要理解了网络应用程序设计的一般原理,并对Winsock控件的主要属性、方法和事件有所了解,就可在短时间内创建一个简单的网络通信程序。
文中略去的程序代码可以联系作者。
[参考文献]
[1]高俊光.基于VB的Winsock控件的原理与应用[J].应用科技,2004.
[2]黄玲玲.杨剀,王颖.在VB中使用Winsock控件实现局域网通信[J].信息技术,2005.
[3]王晓平,钟军.VisualBasic网络通信协议分析与应用实现[J].2003.
关键词:Winsock;网络聊天;客户机/服务器模式;网络编程
网络编程是计算机领域发展的一个流行趋势,而VB提供了一系列的网络编程控件,常用的VB网络编程控件有Winsock,Inernet Transfer,webBrower。下面介绍Winsock控件的具体应用。
1 基于Winsock控件的开发模式
Winsock控件采用的是客户机/服务器模式(Client/Server,简称C/S)。此模型包括客户机和服务器应用程序。客户应用程序向服务器应用程序提出请求服务,服务器程序侦听到了客户的请求后对客户的请求作出适当的响应,即对客户提供服务。
2 Winsocket控件详解
2.1 主要属性
LocalHostName:返回本机名字;LocalIP:返回本地计算机IP地址;LocalPort:返回或设置侦听端口;Protocol:返回或设置Winsock所用的协议(TCP或UDP);RemoteHost:返回或设置远程计算机的名称;RemoteHost IP:返回远程计算机的IP地址;RemotePort:连接套接字端口值;State:返回控件当前的状态。
2.2 主要方法
⑴Listen:用于服务器程序,等待客户访问;⑵Connect:用于向远程主机发出连接请求;⑶Accept:用于接受一个连接请求;⑷Senddata:用于发送数据;⑸Getdata:用来取得接收到的数据;⑹Close:关闭当前连接。
2.3 主要事件
ConnectionRequest:客户机向服务器提出请求服务时所触发的事件。通常与Accept方法一同使用,用来接受客户机的连接请求。
DataArrival:当客户端和服务器端有信息发送来时,就会触发该事件。它通常与GetData方法一同使用,通过GetData方法获取新到达的数据。
3 开发实例
网络程序由客户端和服务器两个程序组成,可以在同一台计算机上运行,也可以在网络上的不同计算机上运行。整个系统的运行机制:一是建立连接,主要过程是由客户端程序向服务器程序发出连接请求,服务端程序收到并接受请求,至此客户机与服务器间创建了数据交流的通道。二是开始通信,主要过程是当在客户机的“发送的信息”文本框输入文字时,服务器端的“收到的信息”文本框就会实时地显示相同的文字,反之亦然。
3.1 服务器程序设计
⑴程序界面设计
①创建一个“标准的EXE”工程。
②在窗体上添加Command、三个TextBox控件。名称分别为:发送方的文本框为Ts,接收方的文本框为Tr,服务器的IP地址文本框为TsIP。
③在窗体上添加Winsock控件,名称为winsocksv;将Protocol(协议)属性设置为0。
⑵代码设计
略。
在VB代码设计窗口中编辑相应的事件过程中设计代码,并成功编译服务器端程序,同时制作成.exe文件。
3.2 客户机程序设计
⑴程序界面设计
①创建一个“标准的EXE”工程,添加Winsock控件,
名称为winsock1,将Protocol(协议)属性设置为0。
②在窗体上添加两个Command、四个TextBox控件。
名称分别为:发送方的文本框为TxtS,接收方的文本框为
TxtR,Tc、Ts显示客户机和服务器的IP地址。
⑵代码设计
略。
在VB代码设计窗口中编辑相应的事件过程中设计代码,并成功编译客户端程序,同时制作成.exe文件。运行服务器和客户端的两个.exe文件,就可实现相互之间信息发送和接收。
此实例只能实现两个人进行网络聊天,若服务器程序做一下改动。即可实现一个人同时与多人聊天,把服务器界面添加两个Winsock控件,一个用来侦听网上请求信号,另一个为初始的连接口,采用动态控件数组的形式,以后当请求连接的客户增多时,可在这个控件的基础上动态增加,由于篇幅问题,详细代码略。上述的服务程序和客户机程序已编译成功。
上面的网络聊天程序,主要用到了Winsock控件。在本程序中,此控件选用TCP协议进行远程计算机之间的通信,即便对TCP/IP、TCP这些知识掌握不够,只要理解了网络应用程序设计的一般原理,并对Winsock控件的主要属性、方法和事件有所了解,就可在短时间内创建一个简单的网络通信程序。
文中略去的程序代码可以联系作者。
[参考文献]
[1]高俊光.基于VB的Winsock控件的原理与应用[J].应用科技,2004.
[2]黄玲玲.杨剀,王颖.在VB中使用Winsock控件实现局域网通信[J].信息技术,2005.
[3]王晓平,钟军.VisualBasic网络通信协议分析与应用实现[J].2003.