AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi wie versende ich mit tclient/serversocket eine datei?
Thema durchsuchen
Ansicht
Themen-Optionen

wie versende ich mit tclient/serversocket eine datei?

Ein Thema von gandime · begonnen am 9. Sep 2006 · letzter Beitrag vom 11. Feb 2007
 
Arnulf

Registriert seit: 28. Okt 2004
Ort: Wien
271 Beiträge
 
#26

Re: wie versende ich mit tclient/serversocket eine datei?

  Alt 7. Feb 2007, 10:55
Zitat:
Lese deinen Puffer voll und schreibe ihn in den Stream. Und dies so lange, bis du die gesamte Datei/gesamten Daten im Stream hast.
sorry wenn ich das nicht gleich verstehe.

ich soll den stream ganz einlesen und auch in den puffer - damit meinst wohl den pointer mit der size?

Delphi-Quellcode:
            AStream := TfileStream.Create(income, fmOpenRead or fmShareDenyWrite );
            try
               buffer := AllocMem(AStream.Size);
               AStream.Read(buffer^,AStream.Size);
und ja jetzt könnte ich von buffer weg nur teile in die sendstream methode schreiben.
die frage ist aber wie viel (bytes) kann in gleichzeit in die sendstream methode jagen ohne einen cache overflow im
socket zu bekommen.
Und wie weiß ich wann ich sendstream wieder aufrufen kann um den rest zu schicken?
Ich weiß ja nicht wie voll der cache ist.
also im prinzip das hier in packerl auf geteilt und hald langsamer in den stream geschickt - aber wenn ich da eine schleife mache, dann mach ich den cache ja wieder voll - oder irr ich mich da?

Delphi-Quellcode:
               with Socket do
                    SendBuf(buffer^, AStream.Size);
               finally
                      FreeMem(buffer);
                      FreeAndNil(AStream);
               end;
mit ist schon klar dass ich bei Astream.Size die größe eingeben kann - und in einer schleife einfach packerweise mehr schicken kann - aber macht das einen unterschied? - ich weiß ja immer noch nicht wie voll der socket cache ist bzw. ob ich einen overflow bekomme wenn ich zu viel rein schreibe.
thx
Arnulf
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:03 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