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

Вниз

Как можно скачать файл при помощи IdHTTP ?   Найти похожие ветки 

 
Наташа   (2004-09-29 15:38) [0]

Как можно скачать файл при помощи IdHTTP ?


 
fuzzy ©   (2004-09-29 17:40) [1]

Вообще, можно и без него файлы качать, универсально для D4-D7


uses
 URLMon, ShellApi;

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
 // URL Location
 SourceFile = "http://www.google.com/intl/de/images/home_title.gif";
 // Where to save the file
 DestFile = "c:\temp\google-image.gif";
begin
 if DownloadFile(SourceFile, DestFile) then
 begin
   ShowMessage("Download succesful!");
   // Show downloaded image in your browser
   ShellExecute(Application.Handle, PChar("open"), PChar(DestFile),
     PChar(""), nil, SW_NORMAL)
 end
 else
   ShowMessage("Error while downloading " + SourceFile)
end;

// Minimum availability: Internet Explorer 3.0
// Minimum operating systems Windows NT 4.0, Windows 95

{********************************************************}

{2.способ}

uses
 Wininet;

function DownloadURL(const aUrl: string): Boolean;
var
 hSession: HINTERNET;
 hService: HINTERNET;
 lpBuffer: array[0..1024 + 1] of Char;
 dwBytesRead: DWORD;
begin
 Result := False;
 // hSession := InternetOpen( "MyApp", INTERNET_OPEN_TYPE_DIRECT, nil, nil, 0);
 hSession := InternetOpen("MyApp", INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
 try
   if Assigned(hSession) then
   begin
     hService := InternetOpenUrl(hSession, PChar(aUrl), nil, 0, 0, 0);
     if Assigned(hService) then
       try
         while True do
         begin
           dwBytesRead := 1024;
           InternetReadFile(hService, @lpBuffer, 1024, dwBytesRead);
           if dwBytesRead = 0 then break;
           lpBuffer[dwBytesRead] := #0;
           Form1.Memo1.Lines.Add(lpBuffer);
         end;
         Result := True;
       finally
         InternetCloseHandle(hService);
       end;
   end;
 finally
   InternetCloseHandle(hSession);
 end;
end;


 
Наташа   (2004-09-30 17:36) [2]

Благодарю!!!



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

Форум: "Сети";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.038 c
3-1099923051
DSKalugin
2004-11-08 17:10
2004.12.05
план выполнения запроса. индексы


3-1099922646
alsov1
2004-11-08 17:04
2004.12.05
Не работает TADOQuery


3-1099920344
msguns
2004-11-08 16:25
2004.12.05
Обновление с подсчетом в Аксесе


3-1099930125
dbd
2004-11-08 19:08
2004.12.05
синхронизация обновлений в многопользовательских системах


8-1094305884
CyBeRBuGziLLa
2004-09-04 17:51
2004.12.05
ДАЙТЕ ПРОЦЕДУРУ СГЛАЖИВАНИЯ, ПЛИЗ





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