首页
关于我们
服务项目
作品展示
服务支持
联系我们
友情链接
网站地图
 您当前位置:网络学院 -> 编程开发系-> 编程开发-> VB教程
VB网络编程的基础知识
作者:admin 来源:网络
日期: 2007-2-27
站内搜索
文章页数:[1] 

1. Winsock控件基础

Winsock控件在程序设计时,看不到这个控件显现在执行的窗体之中,但是它可以提供有关网络通讯方面的程序设计依据。此外,在这个控件的使用上,您可以非常容易地要求控件为您调用TCP或是UDP网络服务的功能。因此,当您在编写有关住从式架构的应用程序时,您可以不需要了解TCP通讯协议或是低级的Winsock api调用方式。

通常,以笔者的经验,除了必须与标准通讯协议进行互动外,仅仅是进行一般性相互通讯、交换数据时,Winsock控件可以满足您的要求。因此您可以非常容易地通过属性的设置以及控制方法的调用,与远程的设备进行连接并且相互交换信息。关于这些应用方面以及调用方式,笔者将在接下的探索中,慢慢地研究Winsock的应用方式。

1-1TCP基础

不论是在Internet或是Internet网络之中,以目前流行的趋势,多半都会使用TCP协议来进行远程设备的连接。TCP协议的全名为“传输控制协议(transfer control protocol)”,这是一种在Internet上使用的 主要协议,例如http,ftp,smtp等,都是属于这个中面向连接的协议。因此,当您 使用TCP协议连接两个网络上的设备时,将可以在它们之间交换希望交换的数据。

同时,如果您开发的应用程序属于主从式应用架构(或是n-tear(多层次))应用系统时,将必须要知道应用系统主机的ip地址(利用RemoteHost属于取得)以及连接端口号(利用remoteport属于取得)。在这些数据完全备齐之后,您才可以进行进一步的调用、连接。

因此,如果正在建立主机端应用程序时,必须指定本机,必须指定本机(执行应用程序所在的计算机)所用的连接端口号(localport属于),接着将Winsock控件设置为“监听(listen)”,即可等候远程客户端进行调用与连接。因此,当主机端接收到客户端调用并且要求连接的信息时,将会触发“要求连接()”的事件,接着进行标准“允许”或是“拒绝”的程序。

一旦主机端与客户端连接完成之后,您将可以开始使用“传送数据(senddata)”方法,将数据传送给对方,并且利用“传送完成(sendcomplete)”事件,来检测数据是否传送完毕。同时,在数据传达对方的计算机时,将会触发对方计算的“接收数据(dataarrival)”事件。此时,您可以使用“取得数据(getdata)”方法,来去出这些接收到的数据。

上述的程序将周而复始地发生,直到发生“中断连接(closed)”事件或是不正常断线为止。这种连接与数据传输的方式,则是属于Winsock控件TCP协议的运行特色。图1-1所示为使用TCP连接的运行模式。

1-2 UDP基础

相对于TCP面向连接的协议则是属于UDP非面向连接协议,UDP协议的全名是“用户数据报协议(user datagram protocol)”,其运行方式明显与TCP协议有所不同。一般来说,使用UDP协议并没有所谓的主机端或是客户端的限制,您可以依据需求任意对调用主机端与客户端的角色。

因此,在数据传输之前,您必须要先设置好本机端所使用的连接端口(localport属于所指定的)。因此,在本机上必须设置远方主机的ip地址(RemoteHost属性所指定的)以及连接端口号(remoteport),并且使用这个属性的内容与远程设备进行连接。相对的,远程主机的本机连接端口则为调用端的远程连接端口号,而远程主机的“远程主机ip地址(RemoteHost属性)”则为调用端的本机ip地址。

为了让您可以对UDP协议有更清楚的了解,请参照下面的图:

在完成连接之后,即可通过连接到远程的连接端口,使用senddata方法,将数据传送到远程的主机上。远程的主机一旦接收到数据,将会立即触发dataarrival事件,此时您可以使用getdata方法,来取得远程所传送的数据。 上面阐述了有关TCP和UDP的一些连接原理,至于Winsock的属性、方法、事件在此不做介绍有关资料都有详细的说明。

文章页数:[1] 
放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·VB网络编程的基础知识
·VB6.0数据库访问技术与例程解析
·Visual Basic数据库操作方法小结
·VB实现SQL Server 2000存储过程调用
·VB实现图像在数据库的存储与显示
·在VB中存取数据库中的图片
·Visual Basic 的数据库编程
·使用Data控件访问数据库
·在Access数据库中实现密码管理
·掌握VB中的ADO数据对象编程
最新文章
·使用Data控件访问数据库
·VB表格控件总览与例程分析
·在Access数据库中实现密码管理
·Visual Basic 的数据库编程
·VB6.0数据库访问技术与例程解析
·基于Visual Basic 6的网络程序设计
·VB实现SQL Server 2000存储过程调用
·VB实现图像在数据库的存储与显示
·在VB中用DAO实现数据库编程
·在VB中存取数据库中的图片
相关主题
版权申明:除部分特别声明不要转载,或者授权本站独家播发的文章外,大家可以自由转载本站的原创文章,但原作者和来自本站的链接必须保留(非本站原创的,按照原来自一节,自行链接)。文章版权归本站和作者共有。
转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去本站水印。
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
发表评论  打印  刷新  推荐给朋友  返回顶部  关闭

网上大名: