Ctrl-R ist blödsinn,
ich meine natürlich Cmd-R. Das ist bei mir "Start". In meinem Fall jetzt sind in der InfoDatei 4 Einträge, also wird die Schleife 4 mal durchlaufen und das Array mit 4 Einträgen gefüllt. Wenn Nichts in der InfoDatei drin steht, bricht der Ladevorgang ab. Somit ist auch Array nichts.
Delphi-Quellcode:
SetLength(InfoArray, System.FileSize(InfoDatei));
seek(InfoDatei, 0);
DatIndex := 0;
while not eof(InfoDatei) do begin
read(InfoDatei, InfoDatensatz);
//infos werden ausgelesen
InfoArray[DatIndex].Var1:=InfoDatensatz.Var1;
{usw}
Steuerungsklasse:= TSteuerungsklasse.Create(DatIndex, StrToInt(InfoArray[DatIndex].Var1));//Zwei Parameter werden übergeben
SteuerungsObjektList.Add(Steuerungsklasse);
Inc(DatIndex);
end;
Und ich hoffe mal, InfoArray enthält keine bösen Zeigertypen oder kompilerabhängige Typen, welche sich gern mal verändern, z.B. bei Umstellung auf
Unicode oder 64 Bit.
So ist es natürlich eleganter, werde ich bei mir vielleicht auch noch so ändern. Zeigertypen enthält das Array nicht, nur harmlose Records mit Integer- und String- Werten (und auch noch ein Array, aber das dürfte kein Problem sein?!). Das Laden des InfoArrays ist auch nicht das Problem, das funktioniert soweit.