如何使用UDP实现文件的传送100M

解决方案 »

  1.   

    在局域网内完全可以用UDP控件实现,用UDP每次发1K的包,就可以实现。
    思路是这样的,具体的实现可以查阅。
      

  2.   

    约定好数据块大小,然后分段发送文件数据,接收方组装接收到的数据
    由于是用UDP,还需要考虑丢包重传的问题,数据包格式可以参照下例
      TMsgFile = record
        FileName: string[64];
        FileID: DWORD;       //用于收发双方标识文件
        FileSize: DWORD;     //文件总长度
        DataIndex: DWORD;    //文件数据片索引,用于分段发送/接收组装文件
        DataSize: DWORD;     //本包中发送的文件数据大小
        FileData: DWORD;     //作为文件数据的起始位置,数据长度由文件大小决定
      end;
      

  3.   

    欢迎广大Delphi爱好者到《delphi专题研讨会》到QQ群7568683
    讨论
      

  4.   

    欢迎广大Delphi爱好者到《delphi专题研讨会》到QQ群7568683
    讨论