IdFTP控件,这函数如何调用?看不懂
IdFTP控件,这函数怎么调用???看不懂
IdFTP控件,这函数怎么调用???看不懂
RootDir = 要删除的根目录,一般情况下 RemoteDir 与 RootDir 相等}
procedure TForm1.FTP_DeleteAllFiles(var idFTP : TIdFtp;RemoteDir,RootDir : string);
label Files;
var
i,DirCount : integer;
Temp : string;
begin
idFTP.ChangeDir(RemoteDir);
if Pos(RootDir,idFTP.RetrieveCurrentDir) = 0 then Exit;
Files :
idFTP.List(nil);
DirCount := idFTP.DirectoryListing.Count ;
while DirCount = 0 do
begin
Temp := idFTP.RetrieveCurrentDir;
idFTP.ChangeDirUp;
idFTP.RemoveDir(Temp);
idFTP.List(nil);
DirCount := idFTP.DirectoryListing.Count ;
for i := 0 to DirCount - 1 do
if idFTP.DirectoryListing[i].FileName = RootDir then Exit;
end;
for i := 0 to DirCount - 1 do
begin
if Pos(RootDir,idFTP.RetrieveCurrentDir) = 0 then Break ;
if idFTP.DirectoryListing[i].ItemType = ditDirectory then
begin
FTP_DeleteAllFiles(idFTP,idFTP.DirectoryListing[i].FileName,RootDir);
end else begin
idFTP.Delete(idFTP.DirectoryListing[i].FileName);
goto Files ;
end;
end;
end;
------解决方案--------------------
------解决方案--------------------
简单的用它上传个文件到ftp空间是很容易,但如果有多个文件一起上传想加上上传进度,就有点麻烦了。
IdFTP控件,这函数怎么调用???看不懂
RootDir = 要删除的根目录,一般情况下 RemoteDir 与 RootDir 相等}
procedure TForm1.FTP_DeleteAllFiles(var idFTP : TIdFtp;RemoteDir,RootDir : string);
label Files;
var
i,DirCount : integer;
Temp : string;
begin
idFTP.ChangeDir(RemoteDir);
if Pos(RootDir,idFTP.RetrieveCurrentDir) = 0 then Exit;
Files :
idFTP.List(nil);
DirCount := idFTP.DirectoryListing.Count ;
while DirCount = 0 do
begin
Temp := idFTP.RetrieveCurrentDir;
idFTP.ChangeDirUp;
idFTP.RemoveDir(Temp);
idFTP.List(nil);
DirCount := idFTP.DirectoryListing.Count ;
for i := 0 to DirCount - 1 do
if idFTP.DirectoryListing[i].FileName = RootDir then Exit;
end;
for i := 0 to DirCount - 1 do
begin
if Pos(RootDir,idFTP.RetrieveCurrentDir) = 0 then Break ;
if idFTP.DirectoryListing[i].ItemType = ditDirectory then
begin
FTP_DeleteAllFiles(idFTP,idFTP.DirectoryListing[i].FileName,RootDir);
end else begin
idFTP.Delete(idFTP.DirectoryListing[i].FileName);
goto Files ;
end;
end;
end;
------解决方案--------------------
------解决方案--------------------
简单的用它上传个文件到ftp空间是很容易,但如果有多个文件一起上传想加上上传进度,就有点麻烦了。