Вниз
Скачать: CL | DM;

Проблема при закачке нескольких файлов по протоколу HTTP   Найти похожие ветки 

 
Reals ©   (2002-06-17 17:08) [0]

Помогите пожалуйста решить ситуацию.
Сразу скажу, что при закачке одного файла, все работает отлично.
Проблема появляеться если количество закачиваемых файлов больше 1.
Для закачивания фалов я использую одну библиотеку, при помощи которой это осуществляеться.
Вот пример кода:
var HttpGet: THTTPGet; //Из дополнительной библиотеки
FilesDownload: TStringList;
...
//Переменная FilesDownload заполнена списком скачиваемых файлов.

for i:=0 to FilesDownload.Count-1 do begin
HttpGet := THTTPGet.Create(Self);
HttpGet.URL:= FilesDownload.Strings[i];
HttpGet.FileName:= "Имя_локально_создаваемого_файла";
HttpGet.GetFile;
HttpGet.Free;
end;

Также проиходит обработка событий OnProgress и OnDoneFile
В событии OnProgress присваюваються значения ПрогрессБара.
Событие OnDoneFile срабатывает когда закончена закачка файла.

Теперь по поводу ошибки. Если в переменной списка FilesDownload только одна запись, то есть одна ссылка для скачивания файла, то все проходит отлично. И соотвественно также пройдет без ошибок, если цикла не будет.
Но если цикл проходит более одного раза, то программа выдает ошибку, зависает и выгружаеться сама.
Я понял, что у меня написано не правильно, у меня обьект уничтожаеться когда еще закачка файла не закончена и создаеться заново для нового файла. Это есть не правильно.
Подскажите пожалуйста, как правильно организовать мне загрузку несколько файлов по очередно? Нужно дождаться выполнения текущего обьекта и только после этого идти дальше по циклу. Подскажите, кто знает, как это сделать?

P.S. Почему в цикле происходит создание и уничтожение обьекта? Потому что если один раз создать обьект и потом в нем только менять значения ссылок и вызывать процедуру закачки, то тогда программа зависает. Я заметил что один экземпляр обьекта работает только на одну ссылку.

Заранее благодарен!


 
lipskiy ©   (2002-06-17 17:32) [1]

HTTPGet - кривой компонент, не юзай его.
Я использую HTTPCli из библиотеки... кажется HTTPProt.


 
Reals ©   (2002-06-17 17:42) [2]

А все-таки как можно осуществить поочередную закачку с использованием одного компонента?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
1-88939
Sniffer
2002-06-15 14:13
2002.06.27
Как загрузить картинку из файла ресурсов


1-88880
_aero_
2002-06-13 02:15
2002.06.27
проблема с TFrame


1-88932
angelcom
2002-06-15 11:00
2002.06.27
Господа!!! Помогите новичку, плз...


1-88819
Miss
2002-06-11 11:44
2002.06.27
Создание архива данных


1-88840
shagen
2002-06-17 14:26
2002.06.27
Курсорные форматы




   Наверх