马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
注:本文档由 Diu 翻译,小甲鱼校对。
原文链接 -> 传送门
函数功能:
GetFileTime 函数用于获取指定文件或目录被创建,最后被访问和最后被修改的日期和时间。
API 函数原型:
注释:_In_ 说明该参数是输入的,_Out_ 说明该参数是输出的,_opt_ 说明该参数是可选的。BOOL WINAPI GetFileTime(
_In_ HANDLE hFile,
_Out_opt_ LPFILETIME lpCreationTime,
_Out_opt_ LPFILETIME lpLastAccessTime,
_Out_opt_ LPFILETIME lpLastWriteTime
);
参数解析:
参数 | 含义 | hFile | 1. 将获取日期与时间的文件或目录的句柄
2. 该句柄必须是使用 CreateFile 函数,并传递 GENERIC_READ 访问权限而产生的。更多信息,请参见 File Security and Access Rights | lpCreationTime | 1. 指向一个 FILETIME 结构的指针,该结构将获取文件或目录的创建日期和时间
2. 如果应用程序不需要获取该信息,该参数可以为 NULL | lpLastAccessTime | 1. 指向一个 FILETIME 结构的指针,该结构将获取文件或目录的最后被访问的日期和时间
2. 最后被访问时间包括文件或目录最后被写入的时间,最后被读取的时间,最后被运行的时间(如果是可执行文件)
3. 如果应用程序不需要获取该信息,该参数可以为 NULL | lpLastWriteTime | 1. 指向一个 FILETIME 结构的指针,该结构将获取文件或目录的最后被写入,被截断,或被重写(例如,使用 WriteFile 函数或 SetEndOfFile 函数)的日期和时间
2. 当文件属性或者安全描述符被改变时,该日期与时间不会被更新
3. 如果应用程序不需要获取该信息,该参数可以为 NULL |
返回值:
1. 如果函数调用成功,则返回值为非 0;
2. 如果函数调用失败,则返回值为 0;
获取有关错误的更多信息,请调用 GetLastError 函数。
备注:
1. 并不是所有的文件系统都能记录创建时间和最后访问时间,并且并不是所有的文件系统记录方式都相同。例如,在 FAT 文件系统上,创建时间有 10 毫秒的分辨率,写时间有 2 秒的分辨率,并且访问时间有 1 天的分辨率(访问日期)。因此,对于使用 SetFileTime 函数设置的时间,GetFileTime 函数可能不会总是返回相同的时间。
2. NTFS 文件系统在最后访问一个文件之后延迟长达一个小时才更新文件的最后访问时间。NTFS 文件系统也允许禁用更新最后访问时间。在 NTFS 卷上默认不会更新最后访问时间。
Windows Server 2003 and Windows XP:在 NTFS 卷上最后访问时间默认会被更新。
3. 更多信息,请参见 File Times。
4. 如果你重命名或删除一个文件,然后不久后又恢复了这个文件,Windows 会查找用来恢复该文件信息的缓存。被缓存的信息包含文件的短/长名称对和创建时间。
需求:
Minimum supported client | Windows XP 专业版 [桌面应用程序 | Windows 商店应用程序] | Minimum supported server | Windows 2003 服务器版 [桌面应用程序 | Windows 商店应用程序] | Header | FileAPI.h (包含于 Windows.h);
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 和 Windows XP 系统上为 WinBase.h (包含于 Windows.h) | Library | Kernel32.lib | DLL | Kernel32.dll |
【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。
|