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

Вниз

Как скачать файл из интернета без зависания?   Найти похожие ветки 

 
SSSS   (2007-08-04 13:14) [0]

Добрый день! подскажите пожалуйста...Как можно закачать файл из интернета без зависания...
function DownloadFile(SourceFile, DestFile: string): Boolean;
begin
 try
     Result := UrlDownloadToFile(nil, PChar(SourceFile), PChar(DestFile), 0, nil) = 0;
 except
   Result := False;
 end;
end;

procedure TForm1.Button1Click(Sender: TObject);
const
 SourceFile = "http://delphimaster.ru/55.wmv";
  DestFile = "C:\55.wmv";
begin
 if DownloadFile(SourceFile, DestFile) then
 begin
   Label1.Caption:="1";
    end
 else
   ShowMessage("Error while downloading " + SourceFile)
end;


Вот так я качаю файл..Но во время скачки у меня форма просто зависает...и я ничего сделать не могу..возможно ли без зависания скачать ?
Заранее спс...


 
JanMihail ©   (2007-08-04 18:27) [1]

Попробуй вот эту функцию. Возвращает true при удачном скачивании
copyFile("путь к файлу для скачивания", "путь для сохранения");


 
SSSS   (2007-08-05 00:25) [2]

у мя пишет не все параметры заданы...по конкретнее можно пример.?


 
palva ©   (2007-08-05 00:33) [3]

Надо искать в интернете, как использовать функцию UrlDownloadToFile. На самом деле там много параметров не задано, которым вообще говоря можно передать интерфейс, и при скачке будут вызываться функции этого интерфейса.
Если нет желания в этом разбираться, то можно запустить скачку в отдельном потоке (Thread). Это решит проблему.


 
Sdubaruhnul   (2007-08-05 00:52) [4]

>Попробуй вот эту функцию. Возвращает true при удачном скачивании
copyFile("путь к файлу для скачивания", "путь для сохранения");


Сегодня у тебя день пишу абы было?

>На самом деле там много параметров не задано, которым вообще говоря можно передать интерфейс, и при скачке будут вызываться функции этого интерфейса.

Ну будет OnProgress, всё равно легче не станет.

то можно запустить скачку в отдельном потоке (Thread). Это решит проблему.

ИМХО так и надо поступать.

---------------

UrlDownloadToFile - часть комплекта IE, и поэтому я бы не советовал её использовать для чего-нибудь более-менее серьёзного, ибо та же пресловутая зависимость и малый контроль за ходом выполнения. Предлагаю использовать Indy.


 
SSSS   (2007-08-05 00:54) [5]

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


 
SSSS   (2007-08-05 00:55) [6]

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


 
SSSS   (2007-08-05 00:56) [7]

И можно про инди рассказать) а то вы только все предлогаете))а в инетрнете мало на эту тему...примеров хоть бы(


 
Zagaevskiy ©   (2007-08-05 09:07) [8]


> JanMihail ©   (04.08.07 18:27) [1]
> Попробуй вот эту функцию. Возвращает true при удачном скачивании
> copyFile("путь к файлу для скачивания", "путь для сохранения");
>

Насколько я помню, JanMihail пользовался этим для качания из Инета.
А вот
> Sdubaruhnul   (05.08.07 00:52) [4]

Совсем не в тему


 
Anatoly Podgoretsky ©   (2007-08-05 11:50) [9]

Ой как не в тему, идет от ненависти к БГ


 
Zagaevskiy ©   (2007-08-05 11:51) [10]

БГ ?


 
Dib@zol ©   (2007-08-05 11:54) [11]

> [10] Zagaevskiy ©   (05.08.07 11:51)
> БГ ?

Ну не боря же гребенщиков? (де)Билл Гейтс.


 
Колонки   (2007-08-05 11:56) [12]


> (де)Билл Гейтс.

ХАХАХА
можно так (типа по французски) де Билл Гейтс


 
Zagaevskiy ©   (2007-08-05 11:59) [13]


> Колонки   (05.08.07 11:56) [12]


Zagaevskiy   (05.08.07 11:56) [12]


 
SSSS   (2007-08-05 12:21) [14]

Карочь никто незнает?
> то можно запустить скачку в отдельном потоке (Thread).

вот про Thread я в инете искал, все в скольз толком не написанно...
Подскажите кто хнает чем нить а то не дело что б форма зависала во время процесса скачивание а потом отвисала))


 
Zagaevskiy_ro   (2007-08-05 12:49) [15]

Удалено модератором


 
app ©   (2007-08-05 12:50) [16]

> Zagaevskiy_ro  (05.08.2007 12:49:15)  [15]

Не успокаиваешься, а зря - каждое нарушение режим RO приводит только к его продлению, на данный момент уже до 30 дней.


 
Dib@zol ©   (2007-08-05 12:51) [17]

> Не успокаиваешься, а зря - каждое нарушение режим RO приводит
> только к его продлению, на данный момент уже до 30 дней.

Фига там!!!


 
Anatoly Podgoretsky ©   (2007-08-05 12:54) [18]

Не фига там, а факт и кроме того его скоро будут бить пользователи online.kz


 
SSSS   (2007-08-05 13:16) [19]

ппц а по теме них(


 
Yanis ©   (2007-08-05 13:42) [20]

Дубль: http://forum.vingrad.ru/index.php?show_type=forum&showtopic=166532



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

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

Наверх




Память: 0.48 MB
Время: 0.06 c
1-1181746451
Alex_C
2007-06-13 18:54
2007.08.26
Обращение к ф-цииDLL одновременно из нескольких процессов


2-1186124889
dimaL
2007-08-03 11:08
2007.08.26
Закрытие дочерней формы


2-1186173219
Johnnnn
2007-08-04 00:33
2007.08.26
Как прекратить выполнение кода?


2-1186372130
KPV-10k
2007-08-06 07:48
2007.08.26
Выпадающий список в DBComboBox


15-1185429631
record
2007-07-26 10:00
2007.08.26
Record





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский