![]() |
Socket.Sendstream (Tmemory Stream Verschicken)
Hallo, ich habe folgenes problem:
Ich grabbe ein Bild von meiner webcam.... dieses Wird dann in ein Bitma geschrieben... nun soll auch knopfdruck das bild in ein Memorystream Geschrieben werden.. und dieser Stream Soll dann auch gesendet werden.. Das problem ist das beim Empfänger kein onread ereignis ausgelöst wird... aso er dementsprechen den stream nicht sendet. das bild wird in den stream geschrieben, allerdings nicht versendet. Streamgröße > 0 (57654); Sender:
Delphi-Quellcode:
Empfänger:
procedure TForm1.Button4Click(Sender: TObject);
var strlen: int64; begin sm:=TMemoryStream.Create; memo1.Lines.Add('Packe Bild in Stream'); changebmp1.SaveToStream(sm); strlen:=sm.Size; memo1.Lines.Add('Streamlänge: '+inttostr(strlen)); memo1.Lines.Add('Versende Stream'); serversocket1.Socket.Connections[0].SendStream(sm); end;
Delphi-Quellcode:
für hilfe währe ich dankbar
procedure TForm3.ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
var iLen: Integer; Bfr: Pointer; begin memo1.Lines.Add('Empfange Stream'); iLen := Socket.ReceiveLength; GetMem(Bfr, iLen); try Socket.ReceiveBuf(Bfr^, iLen); MyStream.Write(Bfr^, iLen); finally image1.Picture.Bitmap.LoadFromStream(MyStream); FreeMem(Bfr); end; end; MfG Real Thunder Edit: Habe vergessen die Position wieder auf 0 zu setzten also
Delphi-Quellcode:
sm.position:=0;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:04 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