2011-11-29 8 views
5

Estamos utilizando la línea inferior para obtener la fecha y hora del último acceso del archivo..Net File.GetLastAccessTime updates Última hora de acceso del archivo

DateTime dtLastAccesstime = File.GetLastAccessTime(sFilePath); 

Pero nos enfrentamos a un problema extraño, por encima de la propia llamada modifica el tiempo de última entrada. De modo que estamos obteniendo la hora actual como el último tiempo de acceso.

+0

¿Estás seguro de que no hay un código cerca de esa línea que pueda haber modificado la última fecha de acceso? – madd0

+5

¿Estás haciendo algo con 'sFilePath' antes de esta línea de código? Hay un buen artículo de Raymond Chen con una [lista no exhaustiva de actividades inofensivas que actualizan el último tiempo de acceso] (http://blogs.msdn.com/b/oldnewthing/archive/2011/10/10/10222560.aspx) –

Respuesta

7

Usted puede encontrar this post útil, en particular:

A partir de Windows Vista, maintaining the last-access time is disabled by default.

Lo que significa que hoy en día la mayoría de los sistemas operativos no mantendrán el último tiempo de acceso (lo que supongo podría explicar el comportamiento extraño que está viendo).

Incluso si este no es el caso, esta publicación resalta algunos de los muchos escenarios por los cuales el último tiempo de acceso podría haberse actualizado cuando no era tu intención. ¿Puedes estar seguro de que tu aplicación no realiza ningún otro archivo? ¿acceso?

+0

Hola, gracias por tus comentarios y ayuda. Le hemos explicado esto a nuestro cliente y acordó eximir a LastAccessTime de los requisitos. – SantoshTupe

Cuestiones relacionadas