程序的思路是每隔30秒由server向一client发出请求,client接到请求后,
组织数据发送到server端,server接到数据后进行处理,可问题来了,
如果只有一个client的话,程序没有任何问题,可只要超过一个后,server端只接收第一个能与它正常通讯的client的信息,
向第二个client发出请求后,却收不到数据.
我调试了程序,发现server端已正常向client发送了请求,client也收到了这个请求,
并组织了数据向server发送,只是server端并没有接收而已,也就是说,
server端的DataArrival事件没有触发,DataArrival没有响应第二个Client
发过来的数据。问题看样子是出在server端,请各位指点。
或者是大家是否有更好的方法,也请提出来。谢谢。
我在server端用的程序:
For i = 0 to UBound(ipList,1)
WskServer.RemoteHost = ipList(i) '要连接到的计算机名
WskServer.RemotePort = 1002
WskServer.LocalPort = 1001
WskServer.Bind 1001
WskServer.SendData "Msg_Required"
bIsWorking = True
Do while bIsWorking
DoEvents
Loop
Next i
Private Sub WskServer_DataArrival(ByVal bytesTotal As Long)
WskServer.GetData recBuffer
........
bIsWorking = False
End Sub
组织数据发送到server端,server接到数据后进行处理,可问题来了,
如果只有一个client的话,程序没有任何问题,可只要超过一个后,server端只接收第一个能与它正常通讯的client的信息,
向第二个client发出请求后,却收不到数据.
我调试了程序,发现server端已正常向client发送了请求,client也收到了这个请求,
并组织了数据向server发送,只是server端并没有接收而已,也就是说,
server端的DataArrival事件没有触发,DataArrival没有响应第二个Client
发过来的数据。问题看样子是出在server端,请各位指点。
或者是大家是否有更好的方法,也请提出来。谢谢。
我在server端用的程序:
For i = 0 to UBound(ipList,1)
WskServer.RemoteHost = ipList(i) '要连接到的计算机名
WskServer.RemotePort = 1002
WskServer.LocalPort = 1001
WskServer.Bind 1001
WskServer.SendData "Msg_Required"
bIsWorking = True
Do while bIsWorking
DoEvents
Loop
Next i
Private Sub WskServer_DataArrival(ByVal bytesTotal As Long)
WskServer.GetData recBuffer
........
bIsWorking = False
End Sub
好象一个server只与一个client进行通讯,这是为什么?