Einzelnen Beitrag anzeigen

Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#18

Re: Fileupload verschnellern bzw mehrere gleichzeitig!

  Alt 30. Mär 2006, 17:56
Hi,

auf die schnelle fiel mir das hier ein:

Delphi-Quellcode:
TUploadThread = class(TThread)
  private
    FLocalFileName: String;
    FAToURL: String;
  protected
    procedure Execute; override;
  public
    constructor Create(const LocalFileName: String; const AToURL: String);
  end;

implementation

{ TUploadThread }

constructor TUploadThread.Create(const LocalFileName: String; const AToURL: String);
begin
  FLocalFileName := LocalFileName;
  FAToURL := AToURL;
end;

procedure TUploadThread.Execute;
var
  IdHTTP: TIdHTTP;
  picture: TIdMultiPartFormDataStream;
begin
  IdHTTP := TIdHTTP.Create(nil);
  picture := TIdMultiPartFormDataStream.Create;

  try
    IdHTTP.Request.ContentType := 'multipart/form-data';

    picture.AddFile('bild0', FLocalFileName, 'image/jpeg');

    try
      IdHTTP.Post(FAToURL, picture);
    except
      on E: Exception do
        raise Exception.Create('Fehler: ' + E.Message);
    end;
  finally
    IdHTTP.Free;
    picture.Free;
  end;

  Terminate;
end;

// Aufrufbeispiel

var
  UploadThread: TUploadThread;
begin
  UploadThread := TUploadThread.Create('C:\Test.jpg', 'www.blubb.de/ladmichhoch.php');
  UploadThread.FreeOnTerminate := true;
end;
Ich hab jetzt nicht alles aus deinem Code übernommen, aber ich denke, dass du das Prinzip verstehst (selbst, wenn mein Code jetzt nicht funktioniert)
  Mit Zitat antworten Zitat