Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.11.02;
Скачать: CL | DM;

Вниз

idFTP - как скачать файл с определенной позиции   Найти похожие ветки 

 
tytus   (2008-09-25 17:44) [0]

Доброго дня всем. Вот такой вопрос.
Мне нужно периодически по FTP скачивать файл. Файл большой ( в среднем 100 Мб). Файл постоянно дописывается. Нужно через некоторое время постоянно копировать файл с предыдущей позиции и до конца файла. Чтобы каждый раз не перекачивать весь файл.


 
Palladin ©   (2008-09-25 17:48) [1]

так ведь собственно у TIdFTP имеет место быть существование параметра AResume у метода Get
а так как Indy Гроуп ну никак не скрывает исходники, то работа с докачкой просто очевидна...


 
tytus   (2008-09-25 17:52) [2]

>Palladin ©   (25.09.08 17:48) [1]
значит, первый раз, мне нужно скачать весь файл целиком. А потом снова вызывать Get с указанием что нужно докачивать? Так?


 
Palladin ©   (2008-09-25 17:56) [3]

не совсем, в функцию передается TStream
при AResume=True, метод Get будет запрашивать требуемый файл с позиции TStream.Position


 
Поросенок Винни-Пух ©   (2008-09-25 17:56) [4]

если первый раз скачать целиком, то докачивать ничего не надо


 
tytus   (2008-09-25 18:02) [5]

>Palladin ©   (25.09.08 17:56) [3]
немного проясняется...
значит, можно определить размер файла, и установить в TStream.Position - половину файла (чтобы не скачивать весь файл). Затем вызвать Get. Так?
Запомнить конец файла, и при следующем копировании в TStream.Position указать предыдущий конец файла.

>Поросенок Винни-Пух ©   (25.09.08 17:56) [4]
файл постоянно дописывается, посему докачка нужна...


 
Palladin ©   (2008-09-25 18:07) [6]

Зачем определять размер файла? И зачем половину то? Пусть весь скачивает. Сколько скачает - столько запишет. Перед следующим вызовом TIdFtp.Get будет достаточно вызвать TStream.Seek(0,soFromEnd)


 
tytus   (2008-09-25 18:19) [7]

>Palladin ©   (25.09.08 18:07) [6]
ок, понял. Спасибо.



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

Текущий архив: 2008.11.02;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
1-1201414165
snake-as
2008-01-27 09:09
2008.11.02
Помогите разобраться с ADO


11-1194956757
tigra
2007-11-13 15:25
2008.11.02
вкладки


2-1222088665
Фоофа
2008-09-22 17:04
2008.11.02
Определение включенности интернета


10-1149852277
Портос
2006-06-09 15:24
2008.11.02
Не завершается процесс с COM объектом внутри.


2-1222247658
Jiura
2008-09-24 13:14
2008.11.02
Как в Delphi скомпилировать Native DLL?