有人知道为什么FileAge不使用"c:\pagefile.sys“吗?它会返回-1。
更新:
找到它:这是Delphi2010 (QC条目73539)中修复的Delphi,但是我发现的PDF并没有解释他们是如何修复它的。
有人知道他们是怎么修好它的吗?这样我就可以修我的Delphi 7了吗?
更新:雅致修复提供的拉杜巴布!
Delphi 7,Win 7 (32位)
发布于 2010-09-30 07:12:12
试试这个:
然后,使用TSearchRec (wSr bellow)类型的变量加载pagefile.sys
wSR.FindData.ftLastWriteTime -当文件被访问时应该返回
有了下面这个函数,你应该有时间
function FileTime2DateTime(FileTime: TFileTime): TDateTime;
var
LocalFileTime : TFileTime;
SystemTime : TSystemTime;
begin
Result := 0;
try
FileTimeToLocalFileTime(FileTime, LocalFileTime);
FileTimeToSystemTime(LocalFileTime, SystemTime);
Result := SystemTimeToDateTime(SystemTime);
except on e: Exception do
//some message if you want
end;
end;诚挚的问候,
发布于 2010-09-29 19:33:23
请注意,不建议使用FileAge。
TFile.GetLastAccessTime( FileName) 可能是替代者..。
发布于 2010-09-29 19:28:08
调用GetLastError()来获取FindFirstFile() API函数(由FileAge调用)返回的错误代码。
更新:Delphi2010FIX回到FindFirstFile,所以很可能它不会对您有所帮助。他们调用GetFileAttributesEx,如果失败,就调用FindFirstFile。GetFileAttributesEx对于pagefile.sys来说应该是失败的。所以你确实需要检查错误代码。
https://stackoverflow.com/questions/3825077
复制相似问题