Private Sub Command1_Click()
   Dim BytDate() As Byte
   Dim FileName As String
   Dim lngFile As Long
   FileName = "D:\Image\BD-DM_1.BMP"       '取得文件名及路径
        lngFile = FileLen(FileName)        '取得文件长度
        ReDim myFile(lngFile - 1) As Byte  '初始化数组
        
        Open FileName For Binary As #1     '打开文件
        Get #1, , myFile                   '将文件写入数组
        Close #1                           '关闭文件
        Winsock1.SendData myFile           '发送
        DoEventsEnd Sub
  问题是:
    我要控制每次发送数据的大小,也就是每次接收方的bytesTotal大小-----------------------------------------------------比如myFile数组很大,为了程序稳定性我每次发送1024字节,然后再发送1024,一直到结束。我该怎么做呢?

解决方案 »

  1.   

    http://community.csdn.net/Expert/TopicView.asp?id=3515059
    看这个,我写的
      

  2.   

    你这种定义一个和文件大小一样的数组,不好。
    如果文件有几百兆,比如电影,你就要消耗几百兆的内存,系统吃不消
    每次就读1024字节,然后标记一个起点变量x=x+1024,循环从x处读1024字节
      

  3.   

    楼上的兄弟你的意思就是每次把1024字节的数据读出给字节数组,发送后在读再发送,是么?
     
        呵呵,兄弟好办法呀,开始的时候我还以为设置一个winsock没有公开的一个属性呢。比如什么缓冲内存大小什么的呢?
                    还有zyg0谢谢你哦, 你 帮我好多次了,真是太谢谢你了,呵呵  我邮件地址是[email protected]
       有什么需要我帮忙的尽管说,我可以做的一定尽力帮忙!
      

  4.   

    hehe  我这不是在寻找不野蛮的方式么?
       控制大小发送呀!还望各位兄弟帮忙!