Bist Du denn mit der String-Library und den Preferences vertraut?
Im Grunde mußt Du nur folgendes machen:
Du legst erstmal eine Datei an, z.B. sowas:
Code: Alles auswählen
Winamp/Winamp.exe = musik, music, player, sound, winamp
PureBasic/PureBasic.exe = purebasic, proggen, code
Diese kannst Du nun mit OpenPreferences("datei.txt") öffnen. Wenn nun einer in Dein Suchfeld z.B. "proggen" eingibt, dann machst Du einfach folgendes:
Code: Alles auswählen
suchbegriff$ = GetGadgetText(#Suchfeld)
ExaminePreferenceKeys()
While NextPreferenceKey()
If FindString(PreferenceKeyValue(), suchbegriff$)
MessageRequester("Gefunden:", PreferenceKeyName())
EndIf
Wend
Nun müßte das Programm Dir sämtliche Einträge anzeigen, in denen der Begriff vorkommt. In dem Fall natürlich den PureBasic-Eintrag. Wenn es mehrere sind, so werden auch diese alle gefunden. Die kannst Du ja dann z.B. in einer LinkedList speichern und anschließend alle als Icon auf Deinem Desktop-Fenster anzeigen, oder je nachdem wie Du das halt geplant hast.
EDIT: Natürlich brauchst Du nicht zwingend die Preferences benutzen, das geht auch auf andere Art und Weise, aber hier bietet es sich der Einfachheit halber an, da Du ja Wertepaare hast. Außerdem könntest Du es ermöglichen, daß jemand zu einem Programm noch weitere Begriffe hinzufügt, und diese ganz einfach über die Preference-Funktionen wieder mitspeichern.
Später kannst Du das natürlich alles noch verfeinern, z.B. kannst Du die Suchbegriffs-Listen (die ja durch Kommas getrennt sind) über StringField() zerlegen und dann z.B. checken, ob jemand die Worte exakt eingegeben haben (weil im Moment würde er z.B. PureBasic auch dann finden, wenn jemand nur "pure", "ure", oder auch einfach nur "e" eingeben würde).