Indy FTP 递归下载目录及文件的问题!(100分)

  • 主题发起人 主题发起人 lphy
  • 开始时间 开始时间
L

lphy

Unregistered / Unconfirmed
GUEST, unregistred user!
代码:
procedure TForm1.DownAll(localpath:string; serverpath: String);
var
    i,count1:integer;
    ss:string;
    att:TIdDirItemType;
    FileList  : TStrings;
begin
    try begin
        FileList := TStringList.Create;
        memoupload.Lines.add('Changedir'+serverpath);
        IdFTP1.ChangeDir(serverpath);
        if AnsiLastChar(serverpath) <> '/' then
          serverpath := serverpath + '/';
        if AnsiLastChar(localpath) <> '/' then
          localpath := localpath + '/';
        if not DirectoryExists(localpath) then CreateDir(localpath);
         IdFTP1.List(FileList);
        count1:=IdFTP1.DirectoryListing.Count;
        for i:=0 to count1-1  do begin
              ss:=IdFTP1.DirectoryListing.Items[i].FileName;
              att:=IdFTP1.DirectoryListing.Items[i].ItemType;
         if (att<>ditDirectory) and (ss <> '.') AND (ss <> '..') then begin
                if not DirectoryExists(localpath) then CreateDir(localpath);
                IdFTP1.Get(serverpath+ss,localpath+ss,true);
          end
        end;
        for i:=0 to count1-1  do begin
              ss:=IdFTP1.DirectoryListing.Items[i].FileName;
              att:=IdFTP1.DirectoryListing.Items[i].ItemType;
            if (att=ditDirectory) and (ss <> '.') AND (ss <> '..') then begin
              DownAll(localpath+ss,serverpath+ss);
            end;
        end;
         IdFTP1.ChangeDirUp;
         Filelist.Free;
    end
    except
    end;
end;
我根据网上的nmftp递归下载的程序改编的,但是只能下载一部分目录及文件,请各位大侠帮指明其中的错误
 
错误情况:
服务器目录
/abc/
/abc/01/
/abc/01/001/
/abc/01/001/123.htm
/abc/01/001/456.htm
/abc/01/001/789.htm
/abc/01/002/
/abc/01/002/111.htm
/abc/01/002/222.htm
/abc/01/002/333.htm
/abc/02/112.htm
/abc/02/113.htm

只能下载
/abc/
/abc/01/
/abc/01/001/
/abc/01/001/123.htm
/abc/01/001/456.htm
/abc/01/001/789.htm
其它目录就下不了

 
大家帮帮我呀!!!
 
1 看delphi自带的例子
2 下载一下Thttpscan控件(51delphi)中有。
 
to lyq2276959
delphi里面的例子早就看过了
我的是ftp下载
 
我有BCB的源码,你需要吗?
 
后退
顶部