Функция GetFileTime извлекает данные о дате и времени, когда файл был создан, последнего доступа и последнего изменения.
BOOL GetFileTime( HANDLE hFile, LPFILETIME lpCreationTime, LPFILETIME lpLastAccessTime, LPFILETIME lpLastWriteTime ); |
[in] Дескрипторы файлов из которых получаем дату и время. Дескриптор файла должен быть создан с правом доступа GENERIC_READ. Дополнительную информацию, см. в статье Защита файла и права доступа.
lpCreationTime[out] Указатель на структуру FILETIME, чтобы получить дату и время, когда файл создавался. Этот параметр может быть NULL, если приложение не требует этой информации.
lpLastAccessTime[out] Указатель на структуру FILETIME, чтобы получить дату и время, когда был последний доступ к файлу. Время последнего обращения включает в себя последний раз, когда файл записывался, читался или, что касается исполняемых файлов, запускался. Этот параметр может быть NULL, если прикладная программа не требует этой информации.
lpLastWriteTime
[out] Указатель на структуру FILETIME, чтобы получить дату и время, когда файл в последний раз был записан, укорочен или переписан (например при помощи функций WriteFile или SetEndOfFile). Эта дата и время не обновляются, когда атрибуты файла или дескрипторы безопасности изменяются. Этот параметр может быть NULL, если приложение не требует этой информации.Если функция завершается успешно, возвращаемое значение не нуль.
Если функция завершается ошибкой, возвращаемое значение равняется нулю. Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.
Не все файловые системы могут фиксировать время создания и последнего доступа, и не все файловые системы фиксируют их тем же самым способом. Например, в файловой системе FAT время создания имеет разрешающую способность 10 миллисекунд, время записи имеет разрешающую способность 2 секунды, а время доступа имеет разрешающую способность 1 день (фактически дата доступа). Поэтому, функция GetFileTime не может возвратить тот же самый набор информации о временной характеристике файла, используя функцию SetFileTime. NTFS задерживает обновление времени последнего доступа к файлу до одного часа после последнего обращения.
Дополнительную информацию, см. в статье Файловое время.
Если Вы переименовываете или удаляете файл, затем восстанавливаете его вскоре после этого, Windows ищет кэш данных о файле, чтобы восстановить их. Кэшируемая информация включает в себя ее короткую/длинную пару имен и время создания.
Windows Me/98/95: Это замечание не применяется.Пример, см. в статье Извлечение времени последней записи.
Обзор Время (операционной системы), Функции, используемые для времени, FILETIME, GetFileSize, GetFileType, SetFileTime
Размещение и совместимость GetFileTime | ||
К | Windows Vista | Да |
л | Windows XP | Да |
и | Windows 2000 Professional | Да |
е | Windows NT Workstation | Да |
н | Windows Me | Да |
т | Windows 98 | Да |
Windows 95 | Да | |
С | Windows Server 2008 | Да |
е | Windows Server 2003 | Да |
р | Windows 2000 Server | Да |
в | Windows NT Server | Да |
е | ||
р | ||
Используемая библиотека | Kernel32.lib | |
Используемая DLL | kernel32.dll | |
Заголовочный файл | ||
- объявлено в | Winbase.h | |
- включено в | Windows.h | |
Unicode | Нет | |
Замечания по платформе | Не имеется |