Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi [indy] treeview übertragen (https://www.delphipraxis.net/27593-%5Bindy%5D-treeview-uebertragen.html)

the_seed 13. Aug 2004 18:02

Re: [indy] treeview übertragen
 
Zitat:

Zitat von SirThornberry
naja, du musst nach "SaveToStream" noch die Position des Streams auf 0 setzen
Delphi-Quellcode:
var LStream: TMemoryStream;
begin
  LStream := TMemoryStream.Create;
  TreeView1.SaveToStream(LStream);
  LStream.Position := 0; //  <== Die Zeile habsch vergessen gehabt
  //stream senden (mit welcher compo du das auch immer machst)
  IdTCPClient1.Connect;
  IdTCPClient1.WriteStream(LStream);
  LStream.Free;
end;


so weit hatt ichs ja :)
nur wie enpafneg ich den stream?
Code:
var LStream: TMemoryStream;

begin

idtcpclient1.Connect;
LStream := TMemoryStream.Create;
idtcpclient.writeln('test');
idtcpclient1.readStream(LStream);
treeview1.loadfromstream(lstream);
lstream.Free;
->kommt ne fehlermeldung -> expandieren des streams wegen speichermangels nicht möglich?

SirThornberry 13. Aug 2004 18:04

Re: [indy] treeview übertragen
 
in welcher Zeile kommt der fehler? Korrekt müsste es beim lesen so aussehen (position auf 0 wieder setzen)
Delphi-Quellcode:
var LStream: TMemoryStream;
begin
  istcpclient1.Connect;
  LStream := TMemoryStream.Create;
  idtcpclient.writeln('test');
  idtcpclient1.readStream(LStream);
  LStream.Position := 0; // <== ni vergessen!!!
  treeview1.loadfromstream(lstream);
  lstream.Free;
und was mir grad noch aufviel: einmal verwendest du idtcpclient und ein anderes mal idtcplient1 (war bei mir auch schon falsch)

the_seed 13. Aug 2004 18:08

Re: [indy] treeview übertragen
 
fehler kommt trotzdem auch wenn die position angibt...
beim empfangen des streams

auf die syntxfehler nicht achten;) sind drinn weil meine kompos abkürzungen haben und ich die namen selber ergänzen muss um es übersichtlicher zu gestalten...

Dani 14. Aug 2004 00:49

Re: [indy] treeview übertragen
 
Zitat:

LStream.Position := 0; // <== nie vergessen!!!
Ups. :oops: Warum macht das LoadFromStream nicht selbst??

Versuch mal bei WriteStream noch die Länge anzugeben:
Delphi-Quellcode:
IdTCPClient1.WriteStream(LStream, true, true, LStream.Size);


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:26 Uhr.
Seite 2 von 2     12   

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