想用Winsock写一个服务器,在某个端口监听
而可能同时有100个客户端同时建立与服务器端的连接
但一个winsock只能有一个连接,应该怎么实现呢?

解决方案 »

  1.   

    一个winsock做监听,一个winsock数组用来做连接,数值动态加载,只要监听到一个连接请求就增加一个winsock来创建连接,而做监听的winsock就继续监听
      

  2.   

    能不能说得具体一点呀,到底用了几个winsock控件,两个还是多个?
      

  3.   

    Dim rip As String
      Dim s As Integer
      Dim i_num  As Integer
      rip = WsockServer(0).RemoteHostIP
       For s = 0 To List1.ListCount
            If List1.List(s) = WsockServer(Index).RemoteHostIP Then
        
            Else
                List1.AddItem WsockServer(Index).RemoteHostIP
            End If
       Next s
        nsock = nsock + 1
        tcpnum = tcpnum + 1
        Load WsockServer(nsock)
        WsockServer(nsock).LocalPort = 0
        WsockServer(nsock).Accept requestID
    用这几行就能实现连接多个客户端
      

  4.   

    如果不间断连接的话,需要100个WINSOCK控件
    如果可以间断的话,用一个控件扫描就可以了.