![]() |
Re: beliebige Datei in Stream speichern
Hallo zusammen!
Ich finde den Buffer als string zu definieren ist nicht grade die eleganteste Lösung. Da wird es bei größeren Dateien Probleme geben. Mein Vorschlag:
Delphi-Quellcode:
Ich denke, dass es so funktionieren müsste.
procedure TForm1.Button1Click(Sender: TObject);
var str : TFileStream; buffer : Pointer; begin try str := TFileStream.Create('xxx.txt',fmOpenRead); buffer := AllocMem(str.Size); str.Read(Buffer^,str.Size); Server.Socket.Connections[0].SendBuf(buffer^,str.Size); finally FreeMem(buffer); FreeAndNil(str); end; end; procedure TForm1.ClientRead(Sender: TObject; Socket: TCustomWinSocket); var len : integer; buffer : Pointer; str : TFileStream; begin len := Socket.ReceiveLength; try str := TFileStream.Create('xxx2.txt',fmCreate); buffer := AllocMem(len); Socket.ReceiveBuf(buffer^,len); str.Write(buffer^,len); finally FreeAndNil(str); FreeMem(buffer); end; end; |
Re: beliebige Datei in Stream speichern
Moin Bonestorm,
was verstehst Du in diesem Zusammenhang unter "grössere Datei"? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:00 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