Nie wiem dokładnie, ale stare Delphi miały limit na wielkość pliku ini do 64 KB,
powyżej źle się wczytywało i zapisywało. Ale od wersji Delphi 7 i wyżej pewnie
jest już ok. A zrób taki test, wczytaj do tego listboxa cały plik ini jako tekstowy
ponieważ jeżeli się uda to znaczy że może on przechowywać dużo tekstu, może
TStringList będzie lepszy, tylko później problem jak taką ogromną ilość danych,
zaprezentować wizualnie. Jeżeli nie ini to może w xmlu to możesz trzymać. Nic
więcej nie wymyślę, może ktoś inny jeszcze tutaj Tobie - coś lepszego doradzi.
Dodam, że z moich testow wynika, że TStringList, w chwilę wczytuje tekstowy
plik z 2708601 liniami (słownik od wersji gry "Literaki" offline - każda linijka w
nim to osobne słowo). Następnie poniższy kog wczytuje mi te 10000 linijek, no
a wątpie żebyś w swoim ini potrzebował więcej. Przy większej ilości trzeba by,
o ile się nie mylę użyć innych komponentów może bazodanowych - lecz w tym
za dużego doświadczenia nie mam, może są jakieś lepsze na torrym lub innej
stronie, a poniższy kod, wykonuje się u mnie mniej więcej 18300 milisekund.
var
I : integer;
SL : TStringList;
Start, Stop : Cardinal;
begin
ListBox1.Items.Clear;
Start := GetTickCOunt;
SL := TStringList.Create;
SL.LoadFromFile('D:\slowa-win.txt');
ListBox1.Items.BeginUpdate;
for I := 0 to 99999 do
begin
ListBox1.Items.Add(SL[I]);
end;
ListBox1.Items.EndUpdate;
Stop := GetTickCOunt;
ShowMessage(IntToStr(Stop - Start));
SL.Free;
end;