Главная страница
    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.46 MB
Время: 0.034 c
14-1105739482
Ломброзо
2005-01-15 00:51
2005.02.06
Экскурс в Java


1-1106561840
pavel_guzhanov
2005-01-24 13:17
2005.02.06
Не освобождается память при завершении потока


14-1106199071
Бабу
2005-01-20 08:31
2005.02.06
только мне не видно?


1-1106291216
Бизон
2005-01-21 10:06
2005.02.06
Доступ к функциям MSWORD из Delphi


1-1106255785
gyry-9
2005-01-21 00:16
2005.02.06
Уменшение числа до одного розряда





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский