![]() |
dateien per sendstream empfangen
hi alle zusammen,
ich habe folgendes problem: ich habe ein bild und dieses bild sende ich per sendstream an den server. beim server werden auch daten übermittelt, nur wenn ich das bild am ende wieder freigeben möchte, dann gibt es immer eine fehlermeldung und das bild ist nur halb fertig. Deswegen meine frage: wie kann ich dem bild sagen, wann es fertig ist???? hier mal code:
Delphi-Quellcode:
client:
senden:=Tfilestream.create('c:\windows\screen_neu.jpg',fmopenread); form1.ClientSocket1.Socket.SendStream(senden);
Delphi-Quellcode:
server:
procedure TForm1.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket); var screenshot:tjpegimage; buffer:pointer; i:integer; begin i:=socket.ReceiveLength; getmem(buffer,i); try socket.ReceiveBuf(buffer^,i); input_bild.Write(buffer^,i); finally freemem(buffer); end; if input_bild.size=i then input_bild.free; end; |
Re: dateien per sendstream empfangen
Zitat:
|
Re: dateien per sendstream empfangen
also erst mal danke für die antwort...
allerdings hab ich es immer noch nicht ganz hinbekommen. Ich hab jetzt beim client die stream.size in einen string umgewandelt und sende diesen an den server. Der server bekommt den text und und wandelt ihn in eine integer um. Diese integervariable bau ich jetzt folgendermaßen ein:
Delphi-Quellcode:
Wenn ich das dann auprobiere bekomme ich immer eine fehlermeldung. Warum??? Was soll ich jetzt machen ???
if input_bild.size =filesize
then input_bild.Free; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:40 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