关于VB winsock发送文件的问题!!
想用VB写一个发送文件的程序,但是winsock最大只能有8K,我需要发送的文件大于8k,请问高手,发送一个大于8k的文件怎么进行分包,怎么保证文件的完整性和稳定性,最好...
想用VB写一个发送文件的程序,但是winsock最大只能有8K,我需要发送的文件大于8k,请问高手,发送一个大于8k的文件怎么进行分包,怎么保证文件的完整性和稳定性,最好能提供发送端与接受端的代码!或者有发送文件的函数和模块!!谢谢啦!
展开
3个回答
展开全部
楼上你个人的错误,winsock很好用, 发多大的也没关系.也从不错误,
这个是我写的带续传功能的软件部分代码,
Private Type chuansong
文件名 As String
文件位置 As String
装载文件() As Byte
文件大小 As Long
终止位置 As Long
切块位置 As Long
本次起始位置 As Long
切块剩余位置 As Long
End Type
Public Const iMax1 = 2097152 '定义一次缓存文件大小
Public Const iMax = 65535 '定义一次要传的块的大小,
'做一个读取文件指定块的sub.
然后在发送了第一块之后就在Winsock1_SendComplete里面检测剩余的块。直到发送完
这个是我写的带续传功能的软件部分代码,
Private Type chuansong
文件名 As String
文件位置 As String
装载文件() As Byte
文件大小 As Long
终止位置 As Long
切块位置 As Long
本次起始位置 As Long
切块剩余位置 As Long
End Type
Public Const iMax1 = 2097152 '定义一次缓存文件大小
Public Const iMax = 65535 '定义一次要传的块的大小,
'做一个读取文件指定块的sub.
然后在发送了第一块之后就在Winsock1_SendComplete里面检测剩余的块。直到发送完
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
VB的winsock发送文件我试过很多次、很多种方法,可是,不知道是因为理论上可行的东西现实行不通还是代码写错了。常常会发神经一样的,有时可以完整接收完,有时又破坏了文件。个人感觉是由于VB的winsock控件引起的,非常的不稳定! 如果你一定要用它,我觉得你必须加上编码解码过程进行数据正确性验证,当验证到数据不正确时重发上次数据。否则,根据个人使用经验数据传输过程95%的可能都会出错。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
给你上传了利用winsock进行点对点文件传输代码,请下载(注意完整复制链接,不要直接点击):
http://dmdcos.com/ofdmd/dmd/uploadfile/代码1.rar
http://dmdcos.com/ofdmd/dmd/uploadfile/代码1.rar
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询