vb 为什么winsock接收到的数据会为空?

时间:2022-05-08 02:13:34
1 为什么winsock接收到的数据会为空?---bytesTotal=0
2 winsock控件的状态3“挂起”是什么意思?哪个时候会“挂起”,“挂起”之后怎样处理?
  希望哪位朋友能把winsock的所有状态给我讲讲,感谢了!

11 个解决方案

#1


朋友,帮帮忙吗!

#2


哪位晓得不,讲讲

#3


没人知道吗?

#4


发送之后试试看doevent,我当年有个程序就是没写这句话,发送的数据总是发不出。

#5


我加了的,如下
sck_SendFile(i).SendData byte_SendFile                     '发送数据
DoEvents

#6


是不是发送端的每个SendData(发送端用了DoEvents),事件都要触发接收端的DataArrival事件吗?
不是在没有接收数据(缓冲区非空)之前是不会触发DataArrival事件吗?我定义每包发送2K,而接收端却可以一次GetData接收4K6K或8K数据呢?

#7


多次发出的可能被一次或多次接收到,所以在发具有命令性质的字符串时,应加个接尾标记,接收端以此标记来分割每一次的数据.

#8


我做的文件传送模块,以二进制传送,每包定义为2K,在接收端会接收到长度为0的数据,以就是为什么缓冲区非空时,还会触发DataArrival事件?

#9


问:是不是发送端的每个SendData(发送端用了DoEvents),事件都要触发接收端的DataArrival事件吗?
答:不是。

问:不是在没有接收数据(缓冲区非空)之前是不会触发DataArrival事件吗?
答:是。DataArrival事件发生时,缓冲区必定有数据。

问:我定义每包发送2K,而接收端却可以一次GetData接收4K6K或8K数据呢?
答:你定义的是应用层的包大小,这些应用层的包会被底层重新打包的,重新打成多大的包与操作系统中的相关设置有关。

#10


jadeluo(秀峰) ( )请帮我看看我的代码哪儿有问题?谢谢

myredit3.ys168.com

#11


bytesTotal=0

那就是没有数据来麻

#1


朋友,帮帮忙吗!

#2


哪位晓得不,讲讲

#3


没人知道吗?

#4


发送之后试试看doevent,我当年有个程序就是没写这句话,发送的数据总是发不出。

#5


我加了的,如下
sck_SendFile(i).SendData byte_SendFile                     '发送数据
DoEvents

#6


是不是发送端的每个SendData(发送端用了DoEvents),事件都要触发接收端的DataArrival事件吗?
不是在没有接收数据(缓冲区非空)之前是不会触发DataArrival事件吗?我定义每包发送2K,而接收端却可以一次GetData接收4K6K或8K数据呢?

#7


多次发出的可能被一次或多次接收到,所以在发具有命令性质的字符串时,应加个接尾标记,接收端以此标记来分割每一次的数据.

#8


我做的文件传送模块,以二进制传送,每包定义为2K,在接收端会接收到长度为0的数据,以就是为什么缓冲区非空时,还会触发DataArrival事件?

#9


问:是不是发送端的每个SendData(发送端用了DoEvents),事件都要触发接收端的DataArrival事件吗?
答:不是。

问:不是在没有接收数据(缓冲区非空)之前是不会触发DataArrival事件吗?
答:是。DataArrival事件发生时,缓冲区必定有数据。

问:我定义每包发送2K,而接收端却可以一次GetData接收4K6K或8K数据呢?
答:你定义的是应用层的包大小,这些应用层的包会被底层重新打包的,重新打成多大的包与操作系统中的相关设置有关。

#10


jadeluo(秀峰) ( )请帮我看看我的代码哪儿有问题?谢谢

myredit3.ys168.com

#11


bytesTotal=0

那就是没有数据来麻