Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - [решено] Как скачать большие файлы ?

Ответить
Настройки темы
Delphi - [решено] Как скачать большие файлы ?

Аватара для Painkiller

Ветеран


Автор проектов


Сообщения: 1158
Благодарности: 382

Профиль | Отправить PM | Цитировать


День добрый! Нужно скачать файл большого размера , от 2 и более гб ! Перепробовал много вариантов из интернета и не один не работает .
Вот пример
Код: Выделить весь код
uses
 Wininet

function GetInetFile(const fileURL, FileName: String; Progress: TProgressBar): boolean;
const BufferSize = 1024;
var
  hSession, hURL: HInternet;
  Buffer: array[1..BufferSize] of Byte;
  DataSize,BufferLen: DWORD;
  Stream:TMemoryStream;
begin
  Result:=False;
  hSession := InternetOpen(PChar(ExtractFileName(Application.ExeName)), INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
  try
    hURL := InternetOpenURL(hSession, PChar(fileURL),nil,0,0,0);
    try
      DataSize:= 0;
      BufferLen:= sizeof(DataSize);
      if HttpQueryInfo(hURL, HTTP_QUERY_CONTENT_LENGTH or HTTP_QUERY_FLAG_NUMBER,
        @DataSize,BufferLen,PDWORD(nil)^) then
        begin
          Progress.Max:=DataSize;
          Progress.Position:=Progress.Min;
        end;
      Stream:=TMemoryStream.Create;
      try
        repeat
          InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BufferLen);
          Stream.WriteBuffer(Buffer, BufferLen);
          Progress.StepBy(BufferLen);
          Application.ProcessMessages;
        until BufferLen = 0;
        Stream.SaveToFile(FileName);
        Result:=True;
      finally
        Stream.Free;
      end;
    finally
      InternetCloseHandle(hURL);
      Progress.Position:= SizeOf(Buffer);
    end;
  finally
    InternetCloseHandle(hSession);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 if GetInetFile('http://a0555996.xsph.ru/activation/ru_windows_7_ultimate_with_sp1_x64_dvd_u_677391.iso', 'H:\ru_windows_7_ultimate_with_sp1_x64_dvd_u_677391.iso', ProgressBar1) then
    ShowMessage('Скачка завершена');
end;

end.
и тоже не работает =(
Помогите примером, кто ?

-------
http://wiki.oszone.net/images/0/03/UserbarAAA4.gif


UpdatePack 7 для интеграции обновлений в образ Windows 7 SP1 [X86\64]

UpdatePack 8.1 для интеграции обновлений в образ Windows 8.1 [X86\64]

UpdatePack 10 для интеграции обновлений в образ Windows 10 [X86\64]


Отправлено: 15:45, 30-06-2021

 


Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для lxa85

Необычный


Contributor


Сообщения: 4462
Благодарности: 994

Профиль | Сайт | Отправить PM | Цитировать


Цитата Painkiller:
Задачу решил как всегда сам »
Это хорошо.
А как?

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)


Отправлено: 16:05, 05-07-2021 | #3


Аватара для Grabber2006

Ветеран


Сообщения: 4440
Благодарности: 980

Профиль | Отправить PM | Цитировать


DataSize и BufferLen надо было объявить int64.

А вообще если iso не знаю, но на exe (например, самораспаковывающийся архив) антивирус будет орать trojan-downloader.

Отправлено: 03:16, 11-08-2021 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - [решено] Как скачать большие файлы ?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Как скачать файлы с mega.nz ? MKN Хочу все знать 1 13-07-2016 13:54
V. 5.5/2000/2003 - не отсылает большие файлы skif99 Microsoft Exchange Server 8 13-04-2011 10:41
Постоянно битые большие файлы. Fantazy ZZZ Непонятные проблемы с Железом 24 07-11-2008 15:21
Интернет - через мобилу. Как качать большие файлы? Дядюшка Ляо Хочу все знать 21 15-09-2008 09:05
Разное - Большие файлы копируються с ошибками ne_znam Накопители (SSD, HDD, USB Flash) 2 24-04-2008 15:29




 
Переход