Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Problem bei Dateidownload mit Indy (https://www.delphipraxis.net/123632-problem-bei-dateidownload-mit-indy.html)

DiamondDog 5. Nov 2008 19:18


Problem bei Dateidownload mit Indy
 
Hallo Leute,
ich hab da folgendes:
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, idHTTP, StdCtrls, ComCtrls, IdBaseComponent, IdComponent,
  IdTCPServer, IdCustomHTTPServer, IdHTTPServer, IdTCPConnection,
  IdTCPClient;

type
  TForm1 = class(TForm)
    Button1: TButton;
    ProgressBar1: TProgressBar;
    IdHTTP1: TIdHTTP;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    procedure IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer);
    procedure IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var stream:TFilestream;
begin
stream:=TFilestream.create('C:\Rrring_2.5.rar',fmcreate);
idhttp1.Host:='diamonddog.jeak.de';
idhttp1.connect;
idhttp1.Get('infium/rrring/Rrring_2.5.rar',stream);
idhttp1.disconnect;
end;

procedure TForm1.IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCountMax: Integer);
begin
progressbar1.min:=0;
progressbar1.max:=aworkcountmax
end;

procedure TForm1.IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
begin
progressbar1.position:=aworkcount
end;

end.
Problem dabei ist das der Downloadfortschritt,
nicht in der Progressbar angezeigt wird.
Und ich immer folgenden Fehler erhalte:
HTTP/1.1 400 Bad Request.
(Die Datei wird trozdem runter geladen.)

Kann mir da wohl jemand Helfen?

Danke schon mal.

Mfg Dog

DataCool 5. Nov 2008 19:31

Re: Problem bei Dateidownload mit Indy
 
Hi,

welche Version der Indys nutzt Du 9 oder 10?

Lass mal das .connect und das .disconnect vor und nach dem .get weg.

Greetz Data

DiamondDog 5. Nov 2008 20:03

Re: Problem bei Dateidownload mit Indy
 
Indy 9 müste das sein.
Und hab ich schon probiert aber bringt auch nix.

Edit:
So funktioniert der Download nur es wird nix in der Progressbar angezeigt.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var stream:TFilestream;
begin
stream:=TFilestream.create('C:\Rrring_2.5.rar',fmcreate);
IdHTTP1.Get('http://diamonddog.jeak.de/infium/rrring/Rrring_2.5.rar',stream);
IdHTTP1.Disconnect;
end;

nat 6. Nov 2008 11:12

Re: Problem bei Dateidownload mit Indy
 
ich habe das grade mal bei mir getestet - ich denke der download geht einfach zu schnell als dass man
die zwischenschritte der progressbar sehen kann.
wenn man zum test mal das mach
Delphi-Quellcode:
procedure TForm1.IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode;
  AWorkCount: Int64);
begin
progressbar1.position:=aworkcount;
sleep(1000);
end;
dann sieht man eine progressbar die langsam voran geht.
teste das ganze doch ma mit ner größeren datei
(2-3mb kommt halt auf deine leitung an)

DiamondDog 6. Nov 2008 11:23

Re: Problem bei Dateidownload mit Indy
 
Habs hinbekommen, Thema hat sich somit erledigt,
trozdem besten Dank.

DataCool 6. Nov 2008 11:35

Re: Problem bei Dateidownload mit Indy
 
Dann poste bitte auch für die anderen,
wo genau Dein Problem lag und wie es gelöst wurde.

greetz Data

DiamondDog 6. Nov 2008 18:00

Re: Problem bei Dateidownload mit Indy
 
Also der Fehler la an denen hier:
Delphi-Quellcode:
    procedure IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer);
    procedure IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode; const AWorkCount: Integer);
hab sie copiert gehabt und dadurch enstand anscheinen immer der Fehler,
hab Sie dann gelöscht und über den ObjectInspector erstellt.
Und siehe da dann gehts.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:53 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz