LOCAL cConCatString, aBWFiles[1,5], nFiles, i cConCatString = '' nFiles = adir(aBWFiles, "c:\BW\Process*.dat") FOR i = 1 TO nFiles && this avoids all copies if no files were found cConCatString = cConCatString + FILETOSTR("c:\BW\" + aBWFiles[i,1]) ENDFOR =STRTOFILE(cConCatString,'MyConCatFile.DAT',.F.) && .T. would append to any existing MyConCatFile.DAT found RELEASE cConCatString && releases the large string memory allocationProblem now is that nothing is being copied. Second the MyConCatFile appears as a text file and not an sdf type.