Moin TPercon,
unter der Voraussetzung, dass die Liste sortiert ist, könntest Du es mit einer Binären Suche machen, so wie TStringList.Find.
Das heisst erst wird der mittlere Eintrag geprüft.
Anhand des Ergebnisses (<,>,=) kann jetzt entschieden werden, in welcher Hälfte wieder der mittlere Eintrag geprüft wird.
Das dann solange, bis der Ergebnis = lautet, oder der Eintrag nicht vorhanden ist.
Bei 1000 Einträgen wären dass dann maximal 10 Vergleiche statt 1000.
Da Du bei der Enterprise Version ja auch die Sourcen mit dabeihast, kannst Du Dir das auch in TStringList.Find mal ansehen. (oder gleich eine TStringList nehmen
)