Wenn AExeNamen wirklich nur der Name der Exe-Datei ist, ohne Pfadangabe, dann besser
Result := AnsiSameText(AExeName, ExtractFileName(P.szExeFile));
.
Pos('Programm.exe', 'C:\Programme\Spezialprogramm.exe) > 0
.
würde ja sonst True liefern
Ein Therapeut entspricht 1024 Gigapeut.