der sender (hier der server) könnte, nachdem er alle Daten gesendet hat, eine msg schicken, dass er fertig gesendet hat.
und wenn du mich jetzt nicht vollständig durcheinandergebracht hast, sollte das dann so aussehen?
Delphi-Quellcode:
procedure TForm1.ClientSocket1Read(Sender: TObject;
Socket: TCustomWinSocket);
var
iLen: Integer;
Bfr: Pointer;
Stream : TFileStream;
begin
iLen := Socket.ReceiveLength;
GetMem(Bfr, iLen);
try
Socket.ReceiveBuf(Bfr^, iLen);
FStream := TFileStream.Create('c:\teststream.bmp', fmCreate or fmShareDenyWrite); //edit: der müsste außerhalb von onread erstellt werden oder verwechsel ich jetzt wieder was?
FStream.Write(Bfr^, iLen);
//hier die msg, dass Bild da ist isowas wie if receivetext=bla then
image1.Picture.Bitmap.LoadFromStream(Fstream);
finally
FreeMem(Bfr);
end;
end;