主题:winsock 通信出现奇怪问题,请高手解答
nudtxf
[专家分:0] 发布于 2010-08-05 20:52:00
private sub ***
dim data(3) as byte
sock1.senddata data
sock2.senddata data
sock3.senddata data
end sub
执行后为什么只有客户端sock3一方才能收到数据,sock1和sock2数据都没有发送出去?sock1、sock2和sock3都是winsock控件,TCP方式,分别针对三个不同客户端连接。如果将sock2.senddata data语句放在最后,则只有sock2成功发送,也就是说只有最后一条语句成功执行。为什么? 如何解决?请赐教
回复列表 (共7个回复)
沙发
天天学习 [专家分:4570] 发布于 2010-08-06 16:00:00
这是Winsock控件的Bug.
http://support.microsoft.com/kb/245159
FIX: Winsock 控制 SendData 仅通过最新的连接工作
不过我这里可以给多个发送。我用的winsock数组。
Dim sck As Winsock
For Each sck In Winsock1
If sck.Index <> 0 Then
sck.SendData strData
'DoEvents
End If
Next
Set sck = Nothing
我用的winsock控件是SP6的,不知道LZ的是不是一样的?
板凳
tanchuhan [专家分:15140] 发布于 2010-08-06 20:24:00
[quote]This bug was corrected in the latest service pack for Visual Studio 6.0.[/quote]
3 楼
guoyong_cy [专家分:3050] 发布于 2010-08-08 18:51:00
如果没有修正,就需要加上DOEVENTS
4 楼
莫非白 [专家分:750] 发布于 2010-08-10 11:58:00
严重同意 楼上“Winsock 控制 SendData 仅通过最新的连接工作”观点。以前还以为是延时问题,在1数据还没发完毕就发2数据,估计1数据就没有发送完毕。
5 楼
孙瑞 [专家分:590] 发布于 2010-08-25 00:15:00
如果问题结束了,建议楼主结贴。
6 楼
moke5 [专家分:30] 发布于 2010-09-10 23:29:00
寻找一直寻找机会的人!
一个趋势中的趋势的项目!
一个直销和传销终结者的项目!
一个帮助普通创业者成功的项目!
我们在互联网上正在拓展一个生意项目,现在正在寻求合作伙伴。我们认为成功的关键是你是什么人?还有你和谁在一起。我们在乎的是--您是否是有激情、有梦想的人。有意者请跟我们联系,我们和您谈谈,给您讲解一些生意概念,或许我们可以合作。一个集即时网游、交友,娱乐游戏,网络品牌代理商城,互联网平台项目招商进行中……详情QQ空间资料http://user.qzone.qq.com/909065437/infocenter
网商咨询 摩客天宇QQ 909065437
7 楼
C易特联盟 [专家分:60] 发布于 2010-10-03 21:37:00
C易特元亨QQ919169870
最新互助式项目。
这是一个互助的模式。
不推广人也有钱赚的。分A B两个网。
不推广的人在A网。推广的人 在B网。
B网推广的人帮助A网。
A网赚取6000元出局。
B网就多了。
详情了解加QQ919169870
http://blog.sina.com.cn/s/blog_6b19ec920100liv6.html
C易特奖励制度
http://blog.sina.com.cn/cyite6
C易特更多资料博客
我来回复