Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#2

AW: DataSnap Server maximale Satzlänge

  Alt 29. Jun 2023, 16:39
Nein.

Meinst du bei Streams, als Parameter oder Result?




Was nicht direkt in die Abfrage passt, wird aufgeteilt.
Stream.Size gibt dabei -1 zurück,
womit viele Komponenten allerdings nicht klar kommen, weil sie bei <=0 sich sagen "ist nichts da", wie z.B. fast alle LoadFromStream.

Du mußt hier allerdings einfach nur in einer Schleife so lange mit Stream.Read lesen, bis Dieses 0 zurück gibt.
(bzw. einmal ein Read mit einem Puffer der immer größer ist, als nötig)



Bei uns hatte ich DataSnap abgeleitet und kopiere auf der jeweiligen Gegenseite die eintreffenden Streams (Parameter bzw. Result) in einen TMemoryStream um. (also in den Grundfunktionen, anstatt jeweils überall in den eigenen DS-Funktionen)



PS: Damals (noch ganz am Anfang, kurz nachdem DataSnap raus kam), dachten wir das auch
und hatten erst Indy-TCPIP-Server/Client benutzt, wo das DataSnap nur für den Austausch der Verbindungsdaten genutzt wurde, für die TStreams.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (29. Jun 2023 um 16:47 Uhr)
  Mit Zitat antworten Zitat