>>>Why not try something like this:
>>>
>>>CREATE CURSOR crsTest (FieldName M)
>>>lcFileName = SYS(2000,[*.*])
>>>DO WHILE NOT EMPTY(lcFileName)
>>> IF LIKE(UPPER(myStemPart), UPPER(JUSTSTEM(lcFileName))) OR;
>>> LIKE(UPPER(myExtPart), UPPER(JUSTEXT(lcFileName)))
>>> INSERT INTO crsTest VALUES (m.lcFileName)
>>> ENDIF
>>> lcFileName = SYS(2000,[*.*],1)
>>>ENDDO
>>>
>>
>>There are 13173 jpg files in that folder and the total time took 30 sec.
>
>That seems reasonable for such a long list.
>
>You might also consider to divide your files into more folders, to make it more manageable. Even looking at the files in Windows Explorer can take a long time with such a long list.
>
>Splitting folders might be convenient even if you were already working with VFP 9, which doesn't have this array limit.
The problem with splitting is How to split? In other words, these images represent different styles. If, say, we split the folder by two without any particular algorithm, then I would have to check two folders in my code. When we decide to add a new folder, I would have to check it as well. This may become more complex than it's worth...
If it's not broken, fix it until it is.
My Blog