求助:我用Winsock控件来下载一个网页,但接收到的文件总是不超过60多K,但实际上要下载的HTML页面有80多K,不知道什么原因?
如题所说:
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
On Error Resume Next
Dim WebData As String
Winsock1.GetData WebData, vbString
myall = myall + WebData 'myall 是一个全局变量
End Sub
为什么 myall 中的内容总是不超过60多K?
如果要下载的HTML页的大小不到60K的话就可以得到完整的数据,要是大于60多K就不能获得完整的数据了?
还望各位高手能指点一下!!!
谢谢了!!!
问题点数:20、回复次数:7Top
1 楼zyl910(编程的乐趣在于编程控制硬件,与用图形学实现绚丽效果)回复于 2006-01-24 12:19:30 得分 10
一般情况下一个封包最大是64KB
如果封包太大,超过64KB的数据会被丢弃
要想发送超过64KB的数据
得(读dei3)分多次发送
同时要处理SendComplete事件避免数据超过缓冲区大小
Top
2 楼mcc888(小风)回复于 2006-01-24 12:48:26 得分 0
上面这位兄弟说:
/*
要想发送超过64KB的数据
得(读dei3)分多次发送
同时要处理SendComplete事件避免数据超过缓冲区大小
*/
能说的具体一点吗?我对这些不太明白!
Top
3 楼zou19820704(天下英雄)回复于 2006-01-24 12:48:34 得分 0
myall 变量能超过64k么?Top
4 楼qkaibo(艾夏)回复于 2006-01-24 13:04:40 得分 5
奇怪的问题 下发送64K有什么关系
跨陆由一般一个封包是8K 大于8K的 基本是分成8K传送
还有 你说的下载网页 到底是下载哪里的网页???不解Top
5 楼electricperi(双色心情)回复于 2006-01-24 14:41:56 得分 5
64K,想想你被哪限制住了。
难到有人忘了DOS经典的64K上限。
劝你用别的方法存。
开个临时文件不行吗?Top
6 楼mcc888(小风)回复于 2006-01-25 08:38:08 得分 0
谢谢各位了!!!Top
7 楼zfive5(醉马不肖)回复于 2006-01-25 08:43:47 得分 0
Winsock1.GetData WebData, vbString
Winsock1.GetData WebData, vbStringTop




