Tema: FindFirst
Ver Mensaje Individual
  #5  
Antiguo 07-02-2007
waltrapa waltrapa is offline
Registrado
 
Registrado: may 2006
Posts: 3
Reputación: 0
waltrapa Va por buen camino
Muchas gracias por la ayuda que me habeis dado.
Sobre lo que comentabas he probado el código que me has pasado y efectivamente funciona. Gracias de nuevo.
Sin embargo donde tengo el problema es en el if que evalua los atributos del fichero que debe tratar:

Código Delphi [-]
if (FileName.Attr and FileAttrs)=FileName.Attr then

El problema es que como me pasa de forma aleatória es dificil de encontrar el porque, pero creo que tal vez lo haya descubierto.
Os cuento a ver si esto tiene lógica:

Mirando la ayuda con relación a Filename.Attr menciona que devuelve los atributos del fichero. Entre otros puede tomar dos constantes, faArchive y faSysLink con los valores 32 y 64 respectivamente. En una de las ocasiones que he conseguido reproducir el valor he visto que mientras que yo esperaba recibir un valor 32 (faArchive) me llegaba un 64.
Estos archivos no los copio yo sino que solo los recibo y trato. Con esto si abro uno de los ficheros y lo grabo de nuevo, funciona.
Entiendo por tanto que en ocasiones estos archivos no me los graban de forma correcta o bien los atributos no estan correctos.

Después de este rollo he optado por cargarme el if y validar de otras formas.

Por cierto sobre el final del bucle, este trata el fichero y acaba con un FindNext, pero como en principio ví que el problema lo tenia en el if, ya ni lo puse.

Repito, muhas gracias por la ayuda.
Responder Con Cita