Einzelnen Beitrag anzeigen

rdeutsch

Registriert seit: 24. Mär 2006
60 Beiträge
 
#1

mobile Anwendung: FTP-Client bleibt beim Uploaden hängen

  Alt 21. Mai 2014, 15:59
Guten Tag

In meiner mobilen Anwendung wird der Bildinhalt einer TImage-Komponente via FTP auf einen Server hochgeladen. Das Uploaden funktioniert, aber der FTP.Put-Befehl bleibt dabei hängen. Nach einer gewissen Zeit (Timeout) erscheint dann die Fehlermeldung: "Zeitüberschreitung beim Lesen".

Hat da jemand eine Idee was da falsch laufen könnte?

PS: egal ob der Bildinhalt via Stream oder als LoadfromFile hochgeladen wird, der Put-Befehl bleibt hängen.

Danke für eure Hilfe und Gruss
Robert


Hier der Code fürs Uploaden:

Code:
procedure TForm5.UploadImage;
var stream : TMemoryStream;
     saveParams : TBitmapCodecSaveParams;
     aBitmapSurface: TBitmapSurface;
     aPath: string;
begin
  memo1.lines.add('starting upload image stream');
  aPath := System.IOUtils.TPath.GetDocumentsPath + System.SysUtils.PathDelim;
  memo1.lines.add('image path: '+aPath);
  Application.ProcessMessages;

  stream := TMemoryStream.Create;
  try
    aBitmapSurface := TBitmapSurface.Create;

    aBitmapSurface.Assign(Image1.bitmap);
    saveparams.Quality:=20;
    //TBitmapCodecManager.SaveToStream(Stream, aBitmapSurface, '.jpg',@saveParams);
    TBitmapCodecManager.SaveToFile(aPath+'mypicture.jpg',aBitmapSurface);

    try
      if not FTPConnected then
        Exit;
      Application.ProcessMessages;
      //FTPClient.Put(stream,'mymobilepic.jpg',true,0);
      FTPClient.Put( aPath+'mypicture.jpg','mywebpicture.jpg',false,0);
      Application.ProcessMessages;
      FTPClient.Disconnect;

      memo1.lines.add('finished upload image stream');
    except
      on e:exception do
        memo1.lines.add('error uploading image stream: '+e.message);
    end;

  finally
    aBitmapSurface.Free;
    stream.Free;
  end;
end;
  Mit Zitat antworten Zitat