procedure FindFiles(Apath:string);
var
FSearchRec,DSearchRec:TSearchRec;
FindResult:integer;
begin
if apath[length(apath)]<>'\' then apath:=apath+'\';
FindResult:=FindFirst(Apath+'*.*',faAnyFile+faHidden+faSysFile+faReadOnly,FSearchRec);
try
while FindResult=0 do
begin
if pos(LowerCase(ExtractFileExt(FSearchRec.Name)),'.tif.bmp.jpg.gif')>0 then
Form1.ListBox1.Items.Add(Apath+FSearchRec.Name);
FindResult:=FindNext(FSearchRec);
end;
FindResult:=FindFirst(Apath+'*.*',faDirectory,DSearchRec );
while FindResult =0 do
begin
if ((DSearchRec.Attr and fadirectory)=fadirectory) and (leftstr(DSearchRec.Name,1)<>'.') then
FindFiles(Apath+DSearchRec.Name);
FindResult:=FindNext(DSearchRec );
end;
finally
FindClose(FSearchRec);
end;
end;