Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
ADIR, SYS(2000) and Filer all returned wrong results
Message
 
 
À
Tous
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Titre:
ADIR, SYS(2000) and Filer all returned wrong results
Versions des environnements
Visual FoxPro:
VFP 8 SP1
OS:
Windows XP
Database:
Visual FoxPro
Divers
Thread ID:
01173982
Message ID:
01173982
Vues:
97
Hi everybody,

I decided to start a new thread, which is a continuation of "Invalid subscript reference" thread.

I re-coded my program a minute ago to use sys(2000) instead of ADIR. I have a directory with more than 13K jpg files and I'm trying to search for *e4*.jpg. ADIR, Filer and SYS(2000) all return 112 files where 9 of them do not have e4 as part of the name.

Here are the wrong files returned:

K-NK1648PS.JPG
W-PT9144OX.JPG
W-ER3953D.JPG
W-ER3963D.JPG
W-TB2302D.JPG
W-TB2123D.JPG
W-TB2332D.JPG
W-TB1207D.JPG
W-PT9216D.JPG

and here is the test program
	#define crlf CHR(13) + CHR(10)
*!*	oMyFiler = CREATEOBJECT('Filer.FileUtil')
*!*	oMyFiler.SearchPath = "t:\jpg"
*!*	oMyFiler.FileExpression = '*e4*.jpg'
*!*	oMyFiler.Find(0)
*!*	=MESSAGEBOX(oMyFiler.Files.Count)
*!*	_cliptext = ""
*!*	FOR EACH loFile IN oMyFiler.Files
*!*		_cliptext = _cliptext + loFile.Name + CRLF
*!*	NEXT
=MESSAGEBOX(DIRECTORY("t:\jpg"))
ltTime = DATETIME()
_cliptext = ""
CREATE CURSOR crsTest (FieldName C(50))
lcFileName = SYS(2000,[t:\jpg\*e4*.jpg]) && All files
DO WHILE NOT EMPTY(lcFileName)
*!*	   IF LIKE(UPPER(myStemPart), UPPER(JUSTSTEM(lcFileName))) OR;
*!*	      LIKE(UPPER(myExtPart), UPPER(JUSTEXT(lcFileName)))
*!*	      
*!*	   ENDIF
	WAIT WINDOW NOWAIT m.lcFileName
	IF NOT "E4" $ UPPER(m.lcFileName)
		_cliptext = _cliptext + m.lcFileName + CRLF
		INSERT INTO crsTest VALUES (m.lcFileName)
	endif
   lcFileName = SYS(2000,[t:\jpg\*e4*.jpg],1)
ENDDO
=MESSAGEBOX(DATETIME() - m.ltTime)
=MESSAGEBOX(RECCOUNT('crsTest'))
I'm accessing this computer through LogMeIn and the computer is connected to terminal server where the files reside. The connection with the server is not very good from our place.
If it's not broken, fix it until it is.


My Blog
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform