•  

ГлавнаяIndyЧастые вопросы по Indy → Ошибка: Unknown FTP Listing format

Создано: 16.05.2014 21:48:11 · Исправлено: 16.05.2014 21:48:11 · Прочтений: 1053

Ошибка: Unknown FTP Listing format в этой строке s1:=idftp1.DirectoryListing.Items[1].FileName; в инете ничего не нашел С чем это связано, а то уже несколько дней мучаюсь.
Версия Indy небось 10? Там мало подключить модули с компонентом FTP, нужно ещё подключить модули с парсерами ответов FTP серверов. Они в 10-й версии выполнены в виде модулей-плагинов. Посмотрите справку по Indy или хотя бы список модулей в её папке со словом FTP.
все посмотрел, может подскажите как называется точно.
http://www.indyproject.org/KB/ Слева в дереве Migrating to Indy 10/TIdFTP.DirectoryListing is returning nothing for my FTP server. Why?: We restructured the way FTP directory listing is done. The code is now a plug in system with various parsers in their own units which register themselves into a framework. To add support for a particular type of FTP server, you simply add the parser unit to one of your program units uses clause. To add the Unix directory list parser, add IdFTPListParseUnix to your units clause. To add support for Microsoft Windows NT IIS FTP server, add IdFTPListParseWindowsNT to your uses clause. You can also add many other parsers we include in the Indy packages. By convention, they are named IdFTPListParser followed by the server type. You do not need to add IdFTPListParseBase to your uses clause because IdFTP uses that unit. If you wish to use all of Indys FTP List parser classes, just add the IdAllFTPListParsers unit to your uses clause. We admit this new design is not as intuitive as the older one but this has many advantages for us such as: • The FTP list parsing code is now much easier to maintain than the same code in a non-modular design in one unit which would be at least 150KB total. • You now can add support for only the FTP servers you want your program support to support. • You can now write your own custom parser classes and plug those into the standard FTP parsing list framework.
у меня delphi 7, a версию indy не знаю
Если пишу так, то ошибку не выдает
idFTP1.ChangeDir(FTPdir);
LS:=TStringList.Create;
vrem:=FormatDateTime(ddmmyy,Now);
idFTp1.List(ls);
s1 := idftp1.DirectoryListing.Items[1].FileName;
а если напишу
idFTp1.List(ls,pbr-+vrem+-??.csv,false);
то выдает ошибку Unknown FTP Listing format
К сожалению, у меня нет нужной версии Indy, чтобы посмотреть. Возможно ли, что запрашиваемых по маске файлов на сервере просто нет? Стоит посмотреть ответы сервера на обе команды и выяснить, чем они отличаются.
файлы есть, потому что когда вывожу в ListBox по маске, то выводятся только соответствующие маске файлы. Теперь мне надо только эти файлы скопировать с FTP на локальный диск. И пока у меня ничего не выходит.