捐赠 | 广告 | 注册 | 发布 | 上传 | 关于我们    
  沪ICP备05001939号 DELPHI盒子 | 盒子论坛 | 盒子文章 | 盒子问答悬赏 | 最新更新 | 论坛检索 | 下载中心 | 高级搜索    
  精品专区 | 繁體中文 | 奖励公告栏 | 直通车账号登陆 | 关闭GOOGLE广告 | 临时留言    
 
广告
评论:RTC文件传输演示程序
fatspider 592445 2018/10/7 20:57:20
楼主,好像程序上传与下载之后文件都改变了,EXE文件都无法执行了呢?
star5 208262 2014/9/28 23:33:46
rtc官方也跟进了演示,在自带包中提供了一个类似的演示,和我的写法差不多,大家可以看下,在QuickStart\ClientUpload下。
vga 45746 2013/4/7 7:04:01
测试通过, 大家是否注意一个问题:

上传速度 比 下载速度 快 一倍,

怎样 优化一下下载速度?
delphizhou 42721 2012/9/5 17:04:39
主要就是把文件转化为数据流,再分流下载。
delphizhou 42720 2012/9/5 17:04:02
我用D7也写过这个下载的东东。
star5 42488 2012/5/26 8:14:30
进行了优化,欢迎下载,在盒子FTP里,名称是:“RTC文件传输演示优化版.rar”

主要优化大文件传输、并发传输等功能,另做了断点续传测试,效果也不错,不过续传代码没带,方便你们自己研究添加。
star5 42483 2012/5/24 15:39:46
procedure TfrmMain.RtcDataRequest1DataReceived(Sender: TRtcConnection);
var
  s: string;
  d: AnsiString;
  i: integer;
  n: Int64;
begin
  with TRtcDataClient(Sender) do
  begin
    if isDown then
    begin
      d := read;
      Write_File(string(Request.Info.asString['LocFile']), d,
        Response.ContentIn - length(d));
      i := round(Response.ContentIn / Response.ContentLength * 100);
      if GetTickCount - StartTime > 0 then
      begin
        n := round(Response.ContentIn / ((GetTickCount - StartTime) / 1000));
        s := Format('%0.2f',
          [(Response.ContentLength - Response.ContentIn) / n]);
      end
      else // 防止除零
      begin
        n := 0;
        s := '0.00';
      end;
      Label1.Caption := '状态:接收中 ' + IntToStr(i) + '% ['
        + GetSpeed(Response.ContentIn) + '/' + GetSpeed(Response.ContentLength)
        + '] ' + GetSpeed(n) + '/s 还需 ' + s + ' 秒';
      Gauge1.Progress := i;
    end;
    if Response.Done then
    begin
      if isDown then
        Label1.Caption := '状态:接收完成 [接收 '
          + GetSpeed(Response.ContentLength)
          + Format(' 耗时 %0.2f 秒]', [(GetTickCount - StartTime) / 1000])
      else
        Label1.Caption := '状态:发送完成 [传输 '
          + GetSpeed(Request.ContentLength)
          + Format(' 耗时 %0.2f 秒]', [(GetTickCount - StartTime) / 1000]);
      LabeledEdit2.Enabled := True;
      LabeledEdit3.Enabled := True;
      SpeedButton1.Enabled := True;
      Button2.Enabled := True;
      Button3.Enabled := True;
      isDown := false;
    end;
  end;
end;
star5 42482 2012/5/24 15:10:29
347行。。。
star5 42481 2012/5/24 15:03:28
不好意思,下载时有个错误,修正如下:
修改第330行的内容为
Write_File(string(Request.Info.asString['LocFile']), d,
        Response.ContentIn - length(d));
修改后文件md5值正确。
chinaz 42478 2012/5/24 12:01:48
已经ok
star5 42477 2012/5/24 11:12:48
汗~ delphi的演示都只给50火柴,别的倒给110啊。。。
第一页 上一页 下一页 最后页 有 11 条纪录 共1页 1 - 11
 用户名:
 密 码:
自动登陆(30天有效)
 
  DELPHI盒子版权所有 1999-2023 V4.01 粤ICP备10103342号-1 更新RSS列表