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

Вниз

Закачка файла через FTP   Найти похожие ветки 

 
BFG9k   (2004-11-22 12:33) [0]

Необходимо закачать файл с FTP-сервера , причем :
1. Нужно разобрать URL на предмет сервера , имени пользователя , пароля , имени и пути файла.
2. Отобразить процесс закачивания (например с помощью ProgressBar"а)
3. Самое туманное. Обеспечить прерывание закачки с последующим докачиванием.

Что я знаю по этому поводу.
Нашел 3 способа для Delphi7.
1. TidFTP - URL не разбирает (в крайнем случае это можно сделать самому); отображает процесс без проблем ; с докачкой не знаю - есть свойство Intercept , но как пользоваться непонятно.
2. Функция InternetOpenURL из модуля WinInet - URL разбирает , только непонятно как задавать куда качать ; процесс не нашел как отображается; насчет докачки даже смотреть не стал , так как мне нужно отображение процесса.
3. Функция UrlDownloadToFile из модуля URLMon - URL разбирает , причем с указанием куда качать(FileName) , процесс отображает(StatusCB); была бы докачка - цены бы не было , но не нашел.

Мастера , подскажите как использовать один из трех (или иной) способов для достижения трех вышеперечисленных результатов.


 
Дмитрий Ботвин   (2004-11-22 14:59) [1]

Что значит "разобрать URL на предмет сервера , имени пользователя , пароля , имени и пути файла"??? Где ты в URL видел
инфу про пользователя и пароль? И что такое путь файла??? Локальный на сервера что-ли? Кроме это белеберды всё остальное
реализуется просто с помощью IdFTP - там даже демка такая есть...


 
BFG9k   (2004-11-22 15:14) [2]

Дмитрий Ботвин:
Прежде чем называть что-либо белибердой , будь уверен , достаточно ли ты знаешь для этого. Хоть мне это не поможет , обьясню. Синтаксис URL:

<user>:<password>@<host>:<port>/<url-path>

Например ftp://pupkin:pass@microsoft.com:21/updates/list.zip

Нужно вытащить user и password , host (сервер) ,url-path (имя и путь файла). Не хотелось бы самому с этим возиться , подозревая , что это сто раз уже написано .


 
Карелин Артем ©   (2004-11-22 15:31) [3]

BFG9k   (22.11.04 12:33)  

> с докачкой не знаю - есть свойство Intercept , но как пользоваться
> непонятно.

Intercept тут не при чем. Смотри внимательнее на параметры метода, позволяющего скачивать. В исходниках 9 версии ошибка есть в процедуре докачивания, если надо звякни в асю 3030315


 
Verg ©   (2004-11-22 15:35) [4]


> 1. TidFTP - URL не разбирает (в крайнем случае это можно
> сделать самому); отображает процесс без проблем ; с докачкой
> не знаю - есть свойство Intercept , но как пользоваться
> непонятно.


Для этого в Инди есть класс TIdURI.

А с докачкой:

procedure TIdFTP.Get(const ASourceFile, ADestFile: string; const ACanOverwrite: boolean = false; AResume: Boolean = false); overload;

Разве это не то, что нужно?


 
BFG9k   (2004-11-22 16:04) [5]

Verg: То что надо. Спасибо за квалифицированную помощь.
Карелин Артем : Догадываюсь , с чем связана ошибка. У меня в свое время были проблемы с определением размера файла.


 
Карелин Артем ©   (2004-11-22 16:10) [6]

BFG9k   (22.11.04 16:04) [5]
Правильно мыслишь :)



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
3-1104994216
korvin
2005-01-06 09:50
2005.02.06
Индексы пакостят?


1-1106636438
creagen
2005-01-25 10:00
2005.02.06
Ссылка в автозапуске


6-1100836706
Новичек
2004-11-19 06:58
2005.02.06
Создание сокета без сетевой карты.


1-1106592244
MadGhost
2005-01-24 21:44
2005.02.06
StringGrid как запретить редактирование в определенном столбце?


14-1106125811
uny
2005-01-19 12:10
2005.02.06
почему она спрашивает?