Ich hab mir jetzt nicht alles angeschaut aber
Delphi-Quellcode:
laenge:=form1.Memo1.Lines.Count;
//setlength(a, laenge);
for j:=laenge downto 1 do
muss zu einem Fehler führen, da Memo.Lines von 0 bis Memo.Lines.Count - 1 geht...
Vielleicht liegts ja daran (Zugriff auf nicht reservierten Speicher).