课件首页flash课件网络试题教案学档说课稿考研真题课时学案精品作文工作总结实用文档教学论文个人简历论文中心考试中心教学素材文学作品法律文书幼儿教育软件科技英语学习学习教程党团社会故事大王科普知识中考专题高考专题

VB网络编程的基础知识

发布时间:2017-12-14 21:52  作者:极品课件站  点击数:

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的属性、方法、事件在此不做介绍有关资料都有详细的说明。

 关于本站    网站帮助    广告合作    下载声明  
Copyright ©2006-2010ss All Rights Reserved.
浙ICP备09021635号

友情链接/网站合作咨询: