第一次写网络方面的..不大熟悉.
刚刚完成了1对1的连接...
多个连接想用到控件数组..但怎么也写不出来.
一共有A B C   3台机器
 A是服务器端,我想把B C发送过去文字,分别显示在两个text文本框内.请各位高手指点,有源码最好啦..谢谢哈...

解决方案 »

  1.   

    你可以设置winsock数组,用不同的winsock连接客户端,这样接收到的信息就可以区分,分别显示了
      

  2.   

    网上的一个chat server:
    Private Gac() As Boolean
    Dim Socknumber As Integer
    Private Sub Form_Load()
       Winsock1(0).LocalPort = 1600
       Winsock1(0).Listen
       Socknumber = 0
    End SubPrivate Sub Form_Unload(Cancel As Integer)
       Winsock1(0).Close
    End SubPrivate Sub Winsock1_Close(Index As Integer)
       Winsock1(Index).Close
       Unload Winsock1(Index)
       Gac(Index) = False
       Text3.Text = Int(Text3.Text) - 1
    End SubPrivate Sub Winsock1_ConnectionRequest(Index As Integer, ByVal requestID As Long)
       Socknumber = Socknumber + 1
       
       Load Winsock1(Socknumber)
       Winsock1(Socknumber).Accept requestID
       ReDim Preserve Gac(Socknumber)
       Gac(Socknumber) = True
       Text3.Text = Int(Text3.Text) + 1
    End SubPrivate Sub Winsock1_DataArrival(Index As Integer, ByVal bytesTotal As Long)
       Dim c As String
       Winsock1(Index).GetData c, vbString
       Dim i As Integer
       For i = 1 To UBound(Gac)
         If Not i = Index Then
          If Gac(i) Then
             Winsock1(i).SendData c
           DoEvents
          End If
         End If
       Next i
       
       
    End Sub可惜vb不方便多线程,如果多个用户速度太低会导致最后的用户延时太大。
    不知道谁有好的解决方法。