vb winsock向多客户端发送数据的问题,好的追加分

要从服务器向两台客户端发送数据,发现客户端最后加载的那个可以收到数据,而前一个客户端却收不到数据。服务器与客户端都开在同一台电脑上,在我自己家电脑2客户端都可以收到服务器... 要从服务器向两台客户端发送数据,发现客户端最后加载的那个可以收到数据,而前一个客户端却收不到数据。服务器与客户端都开在同一台电脑上,在我自己家电脑2客户端都可以收到服务器的数据,而学校就不行,只有最后加载的收的到,求解释,好的解答一定加分。 展开
 我来答
若以下回答无法解决问题,邀请你更新回答
pivotstar
2014-03-19 · TA获得超过471个赞
知道小有建树答主
回答量:444
采纳率:33%
帮助的人:495万
展开全部
使用控件数组
服务器对每个连线都使用不同index数组
对特定条件或全部的连接发相同广告内容
for i = 1 to Ubound(WinSock1)
'WinSock1(0)控件是服务器自己监听用途
WinSock1(i).SendData "广告内容"
Next i
更多追问追答
追问
我已经是控件数组了,也都一一对应,问题是在家里都可以收到数据,学校不行,会不会是网络设置的问题?请指教
追答
只要Connect之后没有Close,一般问题就是验证接收方网路是不是正常连接运作中
这个可以由服务器先预置发出查询“指令”,意思是服务器对客户端先发送“在不在”,客户端如果有回复“我在”,那么服务器就把“广告内容发出”。如果客户端没有按照预期的回应内容,那么就表示连线已经(多种原因之一)close或被防火墙阻挡。
在TCP准确连接模式情况下,这个来回问答使用的时间是不至于超过0.1秒的。

让学校(客户端程序)主动穿透路由器连接到外网服务器,是较方便于反向连接的,这个你应该很明白原因是学校路由器的设置问题。
如果你的服务器是在家里,那么你的路由器的设置,必须映射外网ip到(内网的某服务器内网ip),这样才能收的到外网ip的客户端传送的信息。你的内网其他工作站能收到,这是正常的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式