Ich habe es - noch zu Zeiten von Delphi 5 so gelernt - und dies seither auch stets so gehandhabt, daß jedes mit SetLegth(My_Array, Len)
erzeugte dynamische Array am Ende mit My_Array:= NIL;
freigegeben werden muß.
Ich erinnere mich nicht, dass das bei Delphi 5 notwendig gewesen wäre. Das mag aber meinem schlechten Gedächtnis geschuldet sein. Ich könnte ja jetzt mein Notebook mit der Delphi 5 Installation rauskramen...