>>>>******************************************************************************** >>>>* Description.......: GetAllFiles1 - builds list of all files in directory tree >>>>* : uses Adir recursive call >>>>* Calling Samples...: >>>>* Parameter List....: tcStartDir, tcFileExt >>>>* Created by........: David Frankenbach >>>>* Modified by.......: >>>>******************************************************************************** >>>>* ADIR() method of recursively building the file list - Dave Frankenbach >>>>lparameters tcStartDir, tcFileExt >>>>* tcStartDir - top directory to start from >>>>* tcFileExt - only files with this extension would be added to the list, >>>>* leave blank for all file extensions >>>> >>>>* Both parameters should be character type, check it first >>>>************************************************************************** >>>>if empty(tcStartDir) or vartype(tcStartDir)<'C' >>>> tcStartDir='c:\' && Get list of files in the whole local drive >>>>else >>>> tcStartDir=addbs(tcStartDir) >>>>endif >>>>if empty(tcFileExt) or vartype(tcFileExt)<'C' >>>> tcFileExt='' >>>>endif >>>> >>>>local ltStart >>>>ltStart = datetime() >>>>local lnTotNumberOfFiles >>>> >>>>create cursor curFilesADIR (cFilename c(100), nSize n(10), dMod d, Flag L) >>>>=RecurseFolder(tcStartDir, tcFileExt) && Call recursive procedure >>>>lnTotNumberOfFiles=reccount(curFilesAdir) >>>>? datetime() - ltStart, lnTotNumberOfFiles >>>> >>>>index on upper(justfname(cFileName)) tag cFileName >>>>browse nowait >>>> >>>>function RecurseFolder >>>>lparameters lcDir, lcFileExt >>>>local i , n, laFiles[1] >>>> >>>>n = adir(laFiles, lcDir + '*.*', "shd" ) >>>> >>>>for i = 1 to n >>>> if ( left( laFiles[i,1], 1 ) != '.' ) >>>> if ( "D" $ laFiles[i,5] ) >>>> RecurseFolder( lcDir + laFiles[i,1] + "\" ) >>>> else >>>> if empty(lcFileExt) or justext(laFiles[i,1])==lcFileExt >>>> llFlag=.f. >>>> insert into filesADIR ; >>>> values( lcDir + laFiles[i,1], laFiles[i,2], laFiles[i,3],llFlag ) >>>> endif >>>> endif >>>> endif >>>>endfor >>>>returnJust trying to help out when possible...