Главная страница
    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.033 c
1-1100662103
Shyrik
2004-11-17 06:28
2004.12.05
помогите


4-1098648914
Mirror
2004-10-25 00:15
2004.12.05
Выделенные файлы в эксплорере


4-1096658084
Ермак
2004-10-01 23:14
2004.12.05
Кассовый аппарат и сканер - ???


1-1101228371
n-neo
2004-11-23 19:46
2004.12.05
Работа с буфером обмена...


1-1100680324
Moiseev-KN
2004-11-17 11:32
2004.12.05
При запуске проги из Дельфи вылетает почему-то окно CPU





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