hola
ps no tengo en si la busqueda en un memo pero aqui te pas un codigo q hace la busqueda en un lisbox.
espero te sirva
procedure Buscar(Lista: TStringList; Path: String);
var
SearchRec: TSearchRec;
begin
if Copy(Path, Length(Path), 1) <> '\' then
Path:= Path + '\';
if FindFirst(Path + '*',faAnyFile,SearchRec) = 0 then
repeat
if (SearchRec.Attr and faDirectory) = faDirectory then
if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
begin
Lista.Add(Path + SearchRec.Name);
Buscar(Lista, Path + SearchRec.Name);
end;
until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;