Zitat:
Sorry, aber ich bin nicht den ganzen Tag im Forum
Deshalb ein Extra Danke schön das du dich mit meinem Problem beschäftigst.
Zitat:
Das Dispose muss man dann aufführen wenn man das den Record nicht mehr braucht.
Habe es geändert.
Delphi-Quellcode:
// Resourcen Freigeben
Dispose(FPBuffer);
FPBuffer := nil;
Result := True;
Zitat:
Könntest du den Code vielleicht etwas erklären?
Schau bitte das Bild 3 an wie sich der Record bzw.. der buffer gefüllt wird.
Delphi-Quellcode:
PParseFile = ^TParseFile;
TParseFile = record
Nr :Integer;
Str : string;
Ptr : PParseFile;
Max : Integer;
end;
Delphi-Quellcode:
TSkinConfig = class
private
ParseFile : TextFile;
LineStart : PParseFile;
FPBuffer : PParseFile;
FToPBuffer : PParseFile;
ParseFile.. erklärt sich von selbst (die TextDatei halt)
LineStart.. hier wird der Maximale Counter (Zeilen in der Textdatei festgehalten)
da sich beim einlesen der nächsten Zeile der letzte FPBuffer leert benötige ich LineStart als Platzhalter für den letzten (aller) Counter.
FPBuffer.. wird initialisiert indem ich den Pointer auf LineStart setze
FToPBuffer.. enthält die Pointer der Records von PParseFile abhängig vom Counter LineStart 0 to max Zeilen.
LineStart erhält dann den kompletten Record von FToPBuffer in dem alle Daten von FPBuffer enthalten sind.
Siehe!
FToPBuffer := FPBuffer;
Hoffe meine Erklärung ist ausreichend.
Danke.
gruss Emil