Du solltest die StringList auch nicht versuchen, in einer Schleife freizugeben, selbst wenn es EOF gäbe. Mach sowas generell so, damit die StringList auch sicher wieder freigegeben wird:
Delphi-Quellcode:
inhalt := TStringlist.Create;
try
while (...)
begin
...
end;
finally
FreeAndNil(inhalt);
end;