如何创建多个套接字作为索引

时间:2011-05-10 14:00:09

标签: vb.net sockets

我有一个使用winsock的VB应用程序。我想将它转换为VB.Net,据我所知,我应该使用System.net.sockets来做到这一点。

但问题是在VB应用程序中,使用winsock的索引功能创建了多个套接字。示例

加载套接字(isocket)

其中isocket是一个整数变量,每次都会递增一个新的连接请求。

那么我该如何做同样的事情,即。在vb.net中打开多个套接字?

2 个答案:

答案 0 :(得分:3)

在VB6中,Winsock是一个OCX,所以通过调用Load Socket(Index)你正在做的是创建一个新的ActiveX控件实例。在VB.NET中没有这样的等价物,所以你可以做的是创建一个System.Net.Sockets.Socket的集合:

Dim collSockets As New Collection(Of System.Net.Sockets.Socket)

当您收到新的连接请求时,请在集合中创建一个新项目:

 Dim sck As New System.Net.Sockets.Socket(**Initialise Your New Socket Here**)
 collSockets.Add(sck)

然后您可以通过索引(零基础)访问您的套接字:

collSockets(0).Whatever()

答案 1 :(得分:0)

然后我们可以这样做:

dim x as integer = 0
x += 1
collSockets(x).Whatever()

这将在每个事件中创建新套接字,而x将加倍,就像

collSocket(1).Whatever()
x+= 1
collSocket(2).Whatever()