Problemas con FOpen y FRead
Posted: Wed Aug 15, 2007 6:32 pm
Amigos del foro FWPPC, Frecuentemente encuentro problemas para abrir un archivo que siempre esta en la misma ubicacion. He notado que es mas facil ubicarlo en la raiz del dispositivo, pero aun asi tengo problemas. Cuando finalmente lo abro con FOpen y obtengo un handle valido, aun asi el FRead me marca 0 bytes leidos.
Alguna Sugerencia de trucos para evitar problemas frecuentes con este tipo de manejo bajo PocketPC? ANEXO CODIGO EJEMPLO:
IF !file(cfile)
msginfo("No s encuentra "+cFile) // Aqui no tengo problemas
ENDIF
if (nFileMan:=FOPEN(cFile, FO_READ )) <=0 //<-Problema Muy Frecuente
MsgInfo("No SE PUDO ACCESAR ARCHIVO "+cFile)
return .F.
endif
nTBytes := fseek(nFileMan,0,2)
nPosFin:=0
nLenRec:=55 // largo datos sin CR
fseek(nFileMan,0,0)
while (nPos1:=fseek(nFileMan,0,1)) < nTBytes
cRec:=spac(nLenRec))
nRead:=FREAD( nFileMan, @cRec, nLenRec+2 )
nPos2:=fseek(nFileMan,0,1)
//DE AQUI NO PUEDO PASAR, PUES SIEMPRE LEE 0 BYTES,
//COMPROBADO CON EMPTY(cRec), y nPos1==nPos2, y nRead==0
GRACIAS DE ANTEMANO!
Alguna Sugerencia de trucos para evitar problemas frecuentes con este tipo de manejo bajo PocketPC? ANEXO CODIGO EJEMPLO:
IF !file(cfile)
msginfo("No s encuentra "+cFile) // Aqui no tengo problemas
ENDIF
if (nFileMan:=FOPEN(cFile, FO_READ )) <=0 //<-Problema Muy Frecuente
MsgInfo("No SE PUDO ACCESAR ARCHIVO "+cFile)
return .F.
endif
nTBytes := fseek(nFileMan,0,2)
nPosFin:=0
nLenRec:=55 // largo datos sin CR
fseek(nFileMan,0,0)
while (nPos1:=fseek(nFileMan,0,1)) < nTBytes
cRec:=spac(nLenRec))
nRead:=FREAD( nFileMan, @cRec, nLenRec+2 )
nPos2:=fseek(nFileMan,0,1)
//DE AQUI NO PUEDO PASAR, PUES SIEMPRE LEE 0 BYTES,
//COMPROBADO CON EMPTY(cRec), y nPos1==nPos2, y nRead==0
GRACIAS DE ANTEMANO!