在Delphi 7中将Win32 FILETIME转换为Unix时间戳

时间:2015-05-18 19:40:27

标签: delphi winapi

我试图在Delphi 7中找到文件夹的最后修改时间。

我试图这样做:

var
  FoundDir: TSearchRec;
  LastRunTime: Integer; //This is a unix timestamp of the last time I scanned this directory.
begin
  FindFirst(Directory, faDirectory, FoundDir);
  if FoundDir.FindData.ftLastWriteTime > LastRunTime
    then //do stuff.
end;

但是ftLastWriteTime是一个_FILETIME对象(从WinAPI返回的基于C的对象)。我的问题是,如何将LastRunTime转换为可竞争的_FILETIME对象,反之亦然。

我已经尝试过查看FoundDir的.time属性,但这只显示了创建的时间。

我想这真的有两个问题:

  1. 如何从dwLowDateTime和dwHighDateTime构建一个int。
  2. 如何将其转换为UNIX时间戳(重复的问题链接提供了答案)

0 个答案:

没有答案