Hi Leute!
Ich benutze in meiner Anwendung ein Record und ein dynamisches Array von diesem Record.
Delphi-Quellcode:
TMeinRecord = record
MeineVar: integer;
.
.
.
end;
MeinArray: Array of TMeinRecord;
Bis dahin kein Problem, ich kann auch das Array füllen. Keine Fehler alles geht wunderbar.
Wenn ich jetzt allerdings mal schnell eben 2000 Arrays erstellen will, kommt Fehler zu wenig Arbeitsspeicher. Kann ich natürlich verstehen, dass der Arbeitsspeicher keine Lust mehr hat.
Ich lese in ein TListView Dateinamen ein, wie gesagt können in Ausnahmefällen locker 2000 oder mehr sein. Das Listview spielt mit und hat kein Problem, aber ich will zu jedem eingelesenen Dateinamen noch mindestens drei weitere Werte zuweisen, diese sollen allerdings nicht im ListView stehen.
Ein zweites Problem das sich daraus ergibt, ist das speichern dieses Arrays. Wenn das Array(Leer, keine Werte) eine Länge von 2000 hat und gespeichert wird, erreich ich eine größe von über 30 MB.
Gibt es da einen Besseren Weg als mit Arrays und Records zu arbeiten? Es ist aber auf jeden Fall möglich diese Größe von Daten "speicherschonend" zu speichern und im Program zu benutzen.
Würde mich über Tipps sehr freuen.
Michael N.