Problem u prenosu streama

Problem u prenosu streama

offline
  • Pridružio: 25 Mar 2006
  • Poruke: 67
  • Gde živiš: Doboj, Republika Srpska

Postovani,
Ima jedan problem.
Koristim indy za razmjenu podataka servera i klijenta.
Problem je sledeci:
Ne mogu da prenesem stream od servera prema klijentu.
Ususti treba da prenesem sadrzaj TMemo komponente sa servera i u drugu TMemo komponentu na klijentu.
Ja sam to uradio ovako ali ocito da nesto nevalja:

    Stream:=TMemoryStream.Create;     memKorisnici.Lines.SaveToStream(Stream);     Stream.Position:=0;     PStream.Korisnici:=TMemoryStream.Create();     PStream.Korisnici.LoadFromStream(Stream);     Stream.Free;     AThread.Connection.WriteBuffer(PStream,sizeof(PStream),true);

Pa bih vas molio da mi pomognete ili da mi napisete link sa primjerima program koji koriste indy TCP server i klijent



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Emil Beli
  • Pridružio: 03 Jan 2005
  • Poruke: 2990
  • Gde živiš: Beograd

pa gladajuci u code, ne znam samo zasto koristis 2 streama?
Zar nije mogao odmah "stream" da se prenosi?
Ako jeste, drugi stream ti ne treba.
Greska je u SizeOf(neki stream)..

SizeOf(Stream) jeste 4 byte
Stream.Size jeste prava velicina

Ne svidja mi se linija PStream.Korisnici.LoadFromStream... to je vrlo ne pouzdano.

ja bih napravio ovako:

Stream:=TMemoryStream.Create; try   memKorisnici.Lines.SaveToStream(Stream);   Stream.Position:=0;   Athread.Connection.WriteBuffer(Stream,Stream.size,true); finally   Stream.free; end;


inace, kad iz jednog strima pravis drugi, korisiti:

RezultijuciStream.CopyFrom(UlazniStream, UlazniStream.size);
RezultijuciStream.Position := 0;
//ili jos bolje: RezultijuciStream.Seek(0,stFromBeginning)



offline
  • Pridružio: 25 Mar 2006
  • Poruke: 67
  • Gde živiš: Doboj, Republika Srpska

Hvala, isprobacu kod, jer mi se cini da mi vise odgovara nego kako sam ja rijesio problem:

      AThread.Connection.WriteInteger(Stream.Size);       AThread.Connection.OpenWriteBuffer();       AThread.Connection.WriteStream(Stream);       AThread.Connection.CloseWriteBuffer;

Ko je trenutno na forumu
 

Ukupno su 1216 korisnika na forumu :: 165 registrovanih, 14 sakrivenih i 1037 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 15694 - dana 01 Feb 2026 12:23

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 33 bren, A.R.Chafee.Jr., acov34, aleksandar1888, aleph_one, Andrija357, aramis s, ArchaBasha, Arni, Atomski čoban, awathorn, babaroga, Betty25, bobomicek, bobor, bobpp, Bobrock1, boj.an, Bombarder, Borski1977, BraneS, bunker, Burovnyak, Ca6otep, ccoogg123, cekic, CHARLIE JA., Cicumile, cifra, cuvarkuca, DalmatinacMF, Darth Malak, Dd41d41, Deki Duga Devetka, djuradj, Dogma21, doktor097, Dovla, draganl, Duh sa sekirom, Duh16, dusan.l, feanor, flash12, FOX, ginjica, Giskard, gobrad, goran.vvv, Hans Gajger, HogarStrashni, hrkaz, ibssa, icemilos, IpMan, ivan979, joca83, Joint Chief, Kamov, kendzo-andzo-boni-fju, kenny74, kolateralnasteta, Kosare, kreker, kunktator, Lazur_01, Lepi Jova, Ljusa, lord sir giga, Lošmi, magyar, mainstream, Manjane, MarijaC84, Marko Marković, marko308, markolopin, marsi, mercedesamg, Mercury, metallac777, Metanoja, Miki01, milanpb, milenko crazy north, MiljanXD, mir, mnn2, N.e.m.a.nj.a., nebidrag, nebojsag, Nemanja.M, nenad81, Neutral-M, nikoladim, nisamBot, nixos, novator, oblivion, Ognjen D., Oscar, paladin71, pedja.st, Pekman, Pero Petković, ping15, pisac12, Plavi Jadran, Plavi1, Podgoritza, Povratak1912, precan, Prečanin30, proka1ng, proljece, Pv123, rachmoff, rakivan, repac, rodoljub, rovac, rr559, ruma, s0ne, Samo gledam, samp1389, sasa76, Semberija, Semprini, sevenino, Sharpshooter, shota91, Sir Budimir, Slodra, Smor, Srky Boy, ssekir75, stagezin, StankoVrankovic, stegonosa, Stojan Mrsavi, Szigetwar, T55, taomaster, Topaz9, Trimi68, trutcina, tubular, UAV operator, urosbg, vensla, Vlada1389, VladaKG1980, voja64, Vojo06, Vrač, vuk77, Wehicle, Wrangler, x011, Zastava, zil10, zixmix, Đurđevdan, 79693