64Soft » Разработчику » Delphi начинающим » Internet>WinInet>Как скачать любой URL используя стандартные настройки сети?

Разработчику » Delphi начинающим : Internet>WinInet>Как скачать любой URL используя стандартные настройки сети?

Начиная с Internet Explorer 3, Microsoft поддерживает очень полезные API, Wininet. Эти функции позволяют использовать все возможности IE, такие как настройки прокси, кэширование файлов и т.д.

Ниже приведён пример использования этих функций для скачивания файла с нужного URL  Это может быть любой доступный URL  ftp://, http://, gopher://, и т.д.

Более подробную информацию об этих функция можно посмотреть в MSDN - Win32 Internet API Functions. (http://msdn.com)

function DownloadFile(const Url: string): string;
var

  NetHandle: HINTERNET;
  UrlHandle: HINTERNET;
  Buffer: array
[0..1024of char;
  BytesRead: cardinal;
begin

  Result := ''
;
  NetHandle := InternetOpen('Delphi 5.x'
, INTERNET_OPEN_TYPE_PRECONFIG, nilnil0);

  if
 Assigned(NetHandle) then
    begin


      UrlHandle := InternetOpenUrl(NetHandle, PChar(Url), nil
0, INTERNET_FLAG_RELOAD, 0);

      if
 Assigned(UrlHandle) then
{ UrlHandle правильный? Начинаем загрузку }

        begin

          FillChar(Buffer, SizeOf(Buffer), 0
);
          repeat

            Result := Result + Buffer;
            FillChar(Buffer, SizeOf(Buffer), 0
);
            InternetReadFile(UrlHandle, @Buffer, SizeOf(Buffer), BytesRead);
          until
 BytesRead = 0;
          InternetCloseHandle(UrlHandle);
        end

      else

        begin

{ UrlHandle неправильный. Генерируем исключительную ситуацию. }

          raise
 Exception.CreateFmt('Cannot open URL %s', [Url]);
        end
;

      InternetCloseHandle(NetHandle);
    end

  else

{ NetHandle недопустимый. Генерируем исключительную ситуацию }

    raise
 Exception.Create('Unable to initialize Wininet');
end
;

 
 (голосов: 0)
 
   Aвтор: alex-saratov 15 марта 2008  Комментарии (0) просмотров: 4901
Ключевые теги: WinInet, Internet, Delphi, API, IE

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо зайти на сайт под своим именем.

Другие новости по теме:



 

Добавление комментария


Name:
E-Mail:

Code:
Enter code:

 
качественная аренда квартир без посредников в Кемерово, аренда в пригороде