Einzelnen Beitrag anzeigen

BerndS

Registriert seit: 8. Mär 2006
Ort: Jüterbog
491 Beiträge
 
Delphi 12 Athens
 
#10

AW: Problem beim Lesen (und schreiben?) von Stream

  Alt 13. Apr 2021, 16:20
Beim Einlesen der Strings sollte nicht Result, sondern Result[1] verwendet werden, da hier der Zeichenpuffer des Ansistrings beginnt.
Delphi-Quellcode:
 function LoadStrFromStream(const st: TMemoryStream): AnsiString;
  var l: LongInt;
  begin
    st.ReadBuffer(l, SizeOf(l)); // -> beim ersten Durchlauf knallt es hier dann
    SetLength(Result, l);
    if l>0 then st.ReadBuffer(Result[1] ,l);
  end;
  Mit Zitat antworten Zitat