我們正在使用以下行來獲取文件的上次訪問日期和時間。.Net File.GetLastAccessTime更新文件的上次訪問時間
DateTime dtLastAccesstime = File.GetLastAccessTime(sFilePath);
但是我們面臨奇怪的問題,上面的調用本身修改了上次訪問時間。因此,我們有效地將當前時間作爲上次訪問時間。
我們正在使用以下行來獲取文件的上次訪問日期和時間。.Net File.GetLastAccessTime更新文件的上次訪問時間
DateTime dtLastAccesstime = File.GetLastAccessTime(sFilePath);
但是我們面臨奇怪的問題,上面的調用本身修改了上次訪問時間。因此,我們有效地將當前時間作爲上次訪問時間。
您可能會發現this post有用的,特別是:
在Windows Vista中,maintaining the last-access time is disabled by default開始。
這意味着現在大多數操作系統不會維持最近訪問時間(我認爲這可能會導致您看到的奇怪行爲)。
即使這不是這篇文章重點介紹了一些在許多情況下,其中的最後訪問時間可能已更新,當你不是故意的情況下 - 你可以確保您的應用程序不執行任何其他文件訪問?
嗨,感謝您的意見和幫助。我們已經向客戶解釋了這一點,他同意免除LastAccessTime的要求。 – SantoshTupe
您確定附近沒有可能修改上次訪問日期的代碼嗎? – madd0
你在這行代碼之前是否用'sFilePath'做了任何事情?有一個很好的文章雷蒙德陳用[無害化活動的非詳盡列表更新上次訪問時間(http://blogs.msdn.com/b/oldnewthing/archive/2011/10/10/10222560.aspx ) –