Irgendwie kommt mir das aber alles unsauber vor. Wieso wird die Stringlist 2x erzeugt und frei gegeben, das passt doch alles nicht.
Delphi-Quellcode:
var
sList: TStringList;
Index: integer;
begin
Result := -1;
sList := TStringList.Create;
try
sList.LoadFromFile(FileName);
for Index := 0 to sList.Count-1 do
begin
if Pos(SearchText, sList.Strings[Index]) <> 0 then
begin
Result := Index;
Break;
end
end;
//Das Folgende hab ich mal drin gelassen, aber eigentlich
//gehört das z.B. in die aufrufende Prozedur verlagert
if Result=-1 then
ShowMessage('Einstiegspunkt wurde nicht gefunden.');
finally
sList.Free;
end;
end;