Da TFileStream ein Enkel von TStream ist, dürfte das eigentlich kein Problem bedeuten.
Stream.Read(stringvariable[1], stringlaenge) benutze ich vielfach problemlos.
SizeOf(was?) gibt einen SmallInt zurück?
Zitat von
TeronG:
BTW: hab mal gelesen, daß man aus gründern der Kompatibilität keine Generischen Typen Speichern soll. (Integer = Generisch -> nicht in jeder Delphiversion gleich)
Könnte ein Problem ergeben, sobald es einen Delphi-Compiler für 64 bit gibt. Dummerweise ist das noch in weiter Ferne
Aber stimmt, daran sollte man jetzt schon denken.
Zitat von
Chilled86:
Hier stürzt das Teil ab
SetLength(Daten, Len);
Was sagen denn die lokalen Ausdrücke (oder die Watch), wie groß Len zu diesem Zeitpunkt ist? Wenn es negativ wäre, wäre das ein guter Grund für den Fehler bei der Bereichsprüfung (siehe auch zwischenzeitlich erschienener anderer Beitrag).
Warum aber bei Dir SizeOf(Len) = SizeOf(SmallInt) und nicht SizeOf(LongInt) (wenn ich das jetzt richtig verstanden habe) kann ich auch nicht beantworten