![]() |
Datei downloaden?
Moin,
ich möchte eine Datei aus dem Internet laden, wie stell ich das (OHNE Indy) an? Da bleibt mir ja nur TClientSocket oder? Wie könnt ich denn damit nach dem verbinden mit dem HTTP Serv eine datei runterladen? (Wie man sie anfordert weiss ich, aber nicht wie man das downloaden dann beginnt) |
Re: Datei downloaden?
URLDownloadToFile (oder so ähnlich)
|
Re: Datei downloaden?
hallo,
ich könnte wetten dass du die suche nicht benutzt hast. in der code-Library findest du alles was du brauchst such doch mal nach urldownloadtofile, wie von spider schon erwähnt |
Re: Datei downloaden?
Moin,
ich möchte aber während des downloads wissen, wieviele bytes bereits gedownloadet sind. das kann ich mit urldownloadtofile wohl nicht oder? |
Re: Datei downloaden?
Das kannst du aber mit den Indys (TIdHTTP).
Hier im Forum gibts einige Beiträge, die das Runterladen mit Progressbar erklären. //edit Ups :oops: *hehe* Aber wieso keine Indys? Die sind doch eigentlich das Maß der Dinge für Intertnetsachen :gruebel: |
Re: Datei downloaden?
Und ich habe aber geschrieben:
Zitat:
|
Re: Datei downloaden?
:gruebel: So:
Delphi-Quellcode:
// ...für die bei denen die Online Hilfe von Delphi (PE) streikt.
// uses ..., WinINet; // CopyURL('http://www.Samples.com/Images/Image001.jpg', 'C:\Downloaded_Image001.jpg') function CopyURL(const URL, OutputFile: string): Boolean; const BufferSize = 2048; var hSession, hURL: HInternet; Buffer: array[0..Pred(BufferSize)] of Byte; BufferLength: DWORD; f: file; m: tmsg; begin Result := False; hSession := InternetOpen('User', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0); try hURL := InternetOpenURL(hSession, PChar(URL), nil, 0, 0, 0); try Assign(f, OutputFile); Rewrite(f, 1); repeat if PeekMessage(M, 0, 0, 0, pm_Remove) then begin TranslateMessage(M); DispatchMessage(M); end; InternetReadFile(hURL, @Buffer, BufferSize, BufferLength); BlockWrite(f, Buffer, BufferLength); until BufferLength = 0; Close(f); Result := True; { if we get here, we succeeded } finally InternetCloseHandle(hURL); end; finally InternetCloseHandle(hSession); end; end; |
Re: Datei downloaden?
Moin,
danke für dein Code-Beispiel. wo ist denn die Methode "SetActiveState" definiert? |
Re: Datei downloaden?
:oops: Ups, hatte ich vergessen "Form1.SetActiveState(stWork);" herauszunehmen. (korrigiert)
|
Re: Datei downloaden?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz