Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с FTP через компаненты Indy [D7, WinXP]


студентик ©   (2006-05-19 11:15:00) 

Здравствуйте, мастера.
На FTP-сервере есть ПУСТОЙ каталог /Out.
Я получаю список файлов из него.
IdFTP1.ChangeDir(FtpOut);
IdFTP1.TransferType := ftBinary;
idFTP1.List(LS, '*.*', false);

Затем обрабатываю список и вызываю
idFTP1.quit;
После чего проверяю, а есть ли еще соеднение или нет
while IdFTP1.Connected do ...
и оказывается, что оно есть! И в итоге тут происходит зацикливание! Ну ладно бы еслиб в каталоге было пару сотен тысяч файлов, тогда бы можно было подумать, что он их упорно считывает, но каталог ПУСТОЙ!!!!
Вопрос: почему не происходит разсоединение? Причем не на постоянной основе, а случайным образом, т.е. два часа может все быть нормально и после Quit состояние Connected становится False. а вот на 101-ой попытке сканирования каталога компонент idFTP "забывает" сменить свой статус.
В чем может быть проболема тут?
P.S. Заранее благодарен


Студентик   (2006-05-25 17:33:00) [1]

Вопрос все еще открыт :(
Добавлю только, что в OnStatus проверил и получил и hsDisconnecting, и hsDisconnected. Но после этого проверив IdFTP.Connected получил все тоже True. И в дальнейшем Connected остается навсегда True. Не помогают ни QUIT, ни Disconnect. Что делать? Может кто-то все же сталкивался?


студентик   (2006-05-19 12:10:00) [2]

>> Сделай idFtp1.Abort перед вызовом Quit.
Сделал... и даже больше... еще и IdFTP1.Disconnect(True);
но даже после этого IdFTP1.Connected = True
:(


Плохиш   (2006-05-19 11:51:00) [3]


> студентик   (19.05.06 11:15)

Сделай idFtp1.Abortперед вызовом Quit.


Наверх

Титульная страница Поиск, карта сайта Написать письмо