Einzelnen Beitrag anzeigen

Der schöne Günther

Registriert seit: 6. Mär 2013
6.110 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: Über Indy versandte Dateien lassen sich nicht öffnen

  Alt 30. Mär 2017, 10:43
1. Warum liest du in deinem Server erst einen Integer raus wie lang der Stream angeblich sein soll? Den schreibst du in deinen Button1Click doch auch nicht rein! Einfach weglassen und alles lesen

2. Mach den FileStream auch wieder zu am Schluss!


Delphi-Quellcode:
procedure TForm10.Button1Click(Sender: TObject);
var
   FStream:TFileStream;
begin
   FStream := TFileStream.Create(fileIn, fmOpenRead);
   try
      IdTcpClient1.Connect();
      IdTCPClient1.Socket.Write(FStream);
      IdTCPClient1.Disconnect();
   finally
      FStream.Destroy();
    end;
end;


procedure TForm10.IdTCPServer1Execute(AContext: TIdContext);
const
   fileOut = 'x:\zipfile_out.zip';
Var
   FStream: TFileStream;
begin
    FStream := TFileStream.Create(fileOut, fmCreate);
    try
       AContext.Connection.Socket.ReadStream(fstream);
       AContext.Connection.Disconnect();
   finally
      FStream.Destroy();
    end;
end;

So funktioniert das bei mir ohne Probleme...
  Mit Zitat antworten Zitat