Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.039 c
15-1185300419
JetAPI
2007-07-24 22:06
2007.08.26
Turbo Delphi Explorer - не знаю на чем сделать выбор.


2-1186122751
p_evghenii
2007-08-03 10:32
2007.08.26
Как подождать завершения чужого процесса


2-1186099361
Riply
2007-08-03 04:02
2007.08.26
RtlDecompressBuffer - использование в цикле.


15-1185793624
VRSB
2007-07-30 15:07
2007.08.26
обработка условий


15-1184778574
Kolan
2007-07-18 21:09
2007.08.26
Еще про DataLayer, а как предпологается быть с отображением?





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