用的是tcp协议,发送数据的代码如下:
nCur = 1
If intMax <> 0 Then
i = nCur Mod intMax + 1
Do While (WinsockSrv(i).State <> sckConnected) And (i < intMax)
i = i + 1
Loop
If WinsockSrv(i).State = sckConnected Then
WinsockSrv(i).SendData sCurSendData
End If
nCurClient = i
End If
为什么总是第一个连接上的接收不到数据呢?
nCur = 1
If intMax <> 0 Then
i = nCur Mod intMax + 1
Do While (WinsockSrv(i).State <> sckConnected) And (i < intMax)
i = i + 1
Loop
If WinsockSrv(i).State = sckConnected Then
WinsockSrv(i).SendData sCurSendData
End If
nCurClient = i
End If
为什么总是第一个连接上的接收不到数据呢?
你是如何接收客户连接请求的,也就是它们的 Index 是如何分配的?2
你的发送代码也很奇怪,逻辑关系很乱?这样不是更清楚吗:For i = 1 To intMax
If WinsockSrv(i).State = sckConnected Then
WinsockSrv(i).SendData sCurSendData
End If
Next i