
Zitat von
Hawkeye219:
Hallo Fabian,
auch Strings sind dynamische Strukturen. Wenn du keinen Speicher für den Inhalt anforderst, wirst du auch nichts laden können, sondern riskierst nur eine Schutzverletzung:
Delphi-Quellcode:
// b := '';
SetLength (b, 3);
container.Read(b[1], 3);
[...]
SetLength (b, 5);
container.Read(b[1], 5);
[...]
container.Read(FHeader.FileCount, SizeOf(FHeader.FileCount));
SetLength (FHeader.Sizes, FHeader.FileCount);
Ah... Danke

Ich dachte, dass hätte sich mit der Längenangabe (string[3]) getan

Zitat von
Hawkeye219:
Den Inhalt von Sizes könntest du sogar "in einem Rutsch" laden.
Und wie geht das? Indem ich das array und nicht die Einträge speichere?

Zitat von
Hawkeye219:
Warum verwendest du für die Signaturen keine ShortStrings?
Weiss ich auch nicht

Kann man da den auch längen festsetzen?
[edit]Nein => Länge immer 256 Byte

Und da sind die anderen Strings kleiner

(4 und 6 Byte)[/edit]
PS: Jetzt funktionierts

Danke Hawkeye!