Zitat:
Der Stream kann aber nicht wissen, dass du einen String übergibst und deshalb nicht SetLength selbst aufrufen.
Dafür deklariere ich LBuffer doch vorher als String.
Wenn ich nicht mit Streams arbeite, gebe ich doch bei einer String-Variable auch nicht vorher die Länge vor, sondern setze einfach: sText := 'Abc'
Zitat:
Dann wird der String eben sinnlos herumkopiert, ist das denn so schlimm?
Nein, schlimm ist das nicht. Aber ich erhalte in jedem Fall einen RuntimeError, wenn ich auf das Kopieren verzichte - obwohl ausreichend Bytes vorhanden sind.