我遇到以下代码片段的问题
启动后第一次我的程序运行此函数时,IdFtp.List命令会出现以下错误
EListError,消息'List index out of bounds(1)'
但是第二次运行时没有发生错误
procedure TForm1.FinnaSkrar(FileFilter: string; FtpFiles : TStringlist);
var
i : Integer;
begin
try
IdFTP1.List(FileFilter, False);
except
ShowMessage('No file found !');
Exit;
end;
for I := 0 to IdFTP1.DirectoryListing.Count - 1 do
FtpFiles.Add(IdFTP1.DirectoryListing.Items[i].FileName);
end;
我尝试将Indy升级到Delphi 2010上的最新版本build 4734 ,但没有成功
错误时的一些进一步信息 调用堆栈显示
尚未触发OnDirParseStart和OnRetrived Dir
并且IdFTP1.DirFormat字符串为空
首先调用IdFTP1.RetrieveCurrentDir不帮助
调用IdFTP1.List(nil)具有相同的结果