| 网站首页 | 文章中心 | 电子书下载 | 矢量图库 | 视频教程 | 素材下载 | 程序代码下载 | JS代码 | 论坛 | 
常用软件类:
|杀毒安全 |联络聊天 |网络软件 |多媒体类 |系统工具 |图形图像 |系统工具 |应用软件 |行业软件
开发设计类:
|动画制作 |图像处理 |3D设计 |操作系统 |站长学院 |网络相关 |WEB设计 |数据库类 |程序开发
VB网络编程中Winsock的使用
作者:未知    文章来源:网络    点击数:    更新时间:2006-8-15
 

 

private sub sckserver_connectionrequest(index as integer,byval requestid as long)

dim I as intege

for I =1 to connmax

if sckserver(1).state=sckclosed then

sckserver(I).accept requestid

end if

end if

end sub

在上述的程序范例中,将会建立一个具有“201”个元素的sckserver控件数组。接着,利用for。。。next循环的方式,来设置加载sckserver控件数组元素或是判断数组元素是否正在连接中进而允许客户端连接。至于sckserver控件数组总元素为“201”的原因在于——“connmax设置为200再加上sckserver(0),因此总元素数量为201”

4.UDP连接的基础

在 建立UDP的应用程序时,其过程会比TCP协议简单许多。这是由于UDP协议在数据传送之前,可以不需要特别明确的连接方式。但是,在上述的TCP连接方式之中,Winsocke控件必须设置在“监听(Linsten)”状态之下,同时在客户端准备与主机进行连接时,主机端也必须要使用Accept方法来允许客户端所要求的连接。

反观在UDP协议方面,双方仅仅需要使用Bind方法,即可与对方连接并且传输数九,因此,UDP协议连接过程的处理方式确实比TCP简单许多。下面介绍使用UDP协议来传送信息的过程。

4-1UDP的连接范例

在此只做简单的介绍

♣窗体frm PeerA的设计内容

如图4-1所示

♣窗体的程序代码

Private Sub Form_Load()

′控件的名字为udpPeerA

With udpPeerA′重点:必须将 RemoteHost 的值修改为对方计算机的名字。

RemoteHost= ″PeerB″

RemotePort = 1001 ′连接的端口号。

Bind 1002 ′绑定到本地的端口。

End With

frmPeerB.Show′显示第二个窗体。

End Sub

Private Sub txtSend_Change()

′在键入文本时,立即将其发送出去。

udpPeerA.SendData txtSend.Text

End Sub

Private Sub udpPeerA_DataArrival (ByVal bytesTotal As Long)

Dim strData As String

udpPeerA.GetData strData

txtOutput.Text = strData

End Sub

♣窗体frmpeerB的设计内容

如图4-2所示

♣窗体frmpeerB的程序代码

Private Sub Form_Load()

′控件的名字为 udpPeerB。

With udpPeerB

′重点:必须将RemoteHost的值改为对方计算机的名字。

RemoteHost= ″PeerA″

RemotePort = 1002 ′要连接的端口。

Bind 1001 ′绑定到本地的端口上。

End With

End Sub

Private Sub txtSend_Change()

′在键入后立即发送文本。

udpPeerB.SendData txtSend.Text

End Sub

Private Sub udpPeerB_DataArrival (ByVal bytesTotal As Long)

Dim strData As String

udpPeerB.GetData strData

txtOutput.Text = strData

End Sub

上一页  [1] [2] [3] 


相关文章