社区
网络通信/分布式开发
帖子详情
idftp,如何做ftp上传进度条?
chiengod
2007-06-10 06:23:36
如题!
...全文
848
4
打赏
收藏
idftp,如何做ftp上传进度条?
如题!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
brightyang
2007-06-12
打赏
举报
回复
double AverageSpeed;
int FileLenCurrentCount;
void __fastcall TForm1::IdFTP1Work(TObject *Sender, TWorkMode AWorkMode,
const int AWorkCount)
{
AnsiString s;
TDateTime TotalTime;
WORD H, M, Sec, MS;
double DLTime;
TotalTime = Now() - STime;
DecodeTime(TotalTime, H, M, Sec, MS);
Sec = Sec + M * 60 + H * 3600;
DLTime = Sec + MS / 1000;
FileLenCurrentCount=AWorkCount/1024;
if (DLTime > 0)
AverageSpeed = (AverageSpeed + (AWorkCount / 1024) / DLTime) / 2;
s = FormatFloat("0.00 KB/s", AverageSpeed);
switch (AWorkMode)
{ case wmRead:
{ Label2->Caption = "下载速度 " + s;
if(FileLenCurrentCount>0)
Label3->Caption ="下载 "+IntToStr(FileLenCurrentCount)+" KB 总计 "+IntToStr(FileLenCount)+" KB";
break;
}
case wmWrite:
{
Label2->Caption = "上传速度 " + s;
if(FileLenCurrentCount>0)
Label3->Caption="上传 "+IntToStr(FileLenCurrentCount)+" KB 总计 "+IntToStr(FileLenCount)+" KB";
}
};
if (AbortTransfer)
IdFTP1->Abort();
ProgressBar1->Position = AWorkCount;
AbortTransfer = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::IdFTP1WorkBegin(TObject *Sender,
TWorkMode AWorkMode, const int AWorkCountMax)
{
STime = Now();
if (AWorkCountMax > 0)
{
ProgressBar1->Max = AWorkCountMax;
}
else
{
ProgressBar1->Max = BytesToTransfer;
}
AverageSpeed = 0;
FileLenCount=AWorkCountMax/1024;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::IdFTP1WorkEnd(TObject *Sender, TWorkMode AWorkMode)
{
BytesToTransfer = 0;
ProgressBar1->Position = 0;
AverageSpeed = 0;
FileLenCount=0;
FileLenCurrentCount=0;
}
chiengod
2007-06-12
打赏
举报
回复
能否给点相关代码呀.
dabaicai
2007-06-11
打赏
举报
回复
用线程上传,对应事件,再同步界面就可以了
hongqi162
2007-06-10
打赏
举报
回复
参考
http://topic.csdn.net/t/20051229/20/4489481.html
delphi
id
ftp
id
http 多线程多
进度条
2019独角兽企业重金招聘Python工程师标准>>> ...
用
ID
FTP
开发
ftp
客户端
(1)控件属性设置RecvBufferSize说明(默认值为8192字节):该属性为整型变量,用于指定连接所用的接受缓冲区大小。这些属性是indy
ftp
里面的。 SendBufferSize说明(默认值为32768字节):该属性也为整型变量,用于指定连接所用的发送缓冲区的最大值。该属性在WriteStream方法中 时,可用于TStream指定要发送内容的块数。如果要发送的内容大于本属性值,则发...
DELPHI
Id
FTP
DELPHI
Id
FTP
FTP
是一个标准协议,它是在计算机和网络之间交换文件的最简单的方法。
FTP
也是应用TCP/IP协议的应用协议标准。
FTP
通常于将作者的文件
上传
至服务器,或从服务器上下传文件的一种普遍的使用方式作为用户,您可以用非常简单的DOS界面来使用
FTP
,也可以使用由第三方提供的软件(如FLASHFXP)来对服务器的数据进行删除,重命名等操作。 当然,使用这些之前
使用
id
ftp
上传
视频到群晖nas
需要
做
一个类似像印象笔记的软件,其中用到
ftp
上传
,摸索了一下,代码如下: implementation uses
Id
FTP
Common; //引用的单元 {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject);//连接
ftp
服务器 var i: integer; tr: Tstrings; begin
Id
FTP
1....
Delphi
id
FTP
FTP
是一个标准协议,它是在计算机和网络之间交换文件的最简单的方法。
FTP
也是应用TCP/IP协议的应用协议标准。
FTP
通常于将作者的文件
上传
至服务器,或从服务器上下传文件的一种普遍的使用方式作为用户,您可以用非常简单的DOS界面来使用
FTP
,也可以使用由第三方提供的软件(如FLASHFXP)来对服务器的数据进行删除,重命名等操作。 当然,使用这些之前,必须先要登录服务器,用指定的用
网络通信/分布式开发
1,593
社区成员
32,962
社区内容
发帖
与我相关
我的任务
网络通信/分布式开发
Delphi 网络通信/分布式开发
复制链接
扫一扫
分享
社区描述
Delphi 网络通信/分布式开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章