Изменение времени файла на текущее время
В следующем примере задается время последней записи файла в текущее системное время с помощью функции SetFileTime .
Файловая система NTFS хранит значения времени в формате UTC, поэтому изменения часового пояса или летнего времени не влияют на них. Файловая система FAT хранит значения времени на основе местного времени компьютера.
Файл должен быть открыт с помощью функции CreateFile с помощью FILE_WRITE_ATTRIBUTES доступа.
#include <windows.h>
// SetFileToCurrentTime - sets last write time to current system time
// Return value - TRUE if successful, FALSE otherwise
// hFile - must be a valid file handle
BOOL SetFileToCurrentTime(HANDLE hFile)
{
FILETIME ft;
SYSTEMTIME st;
BOOL f;
GetSystemTime(&st); // Gets the current system time
SystemTimeToFileTime(&st, &ft); // Converts the current system time to file time format
f = SetFileTime(hFile, // Sets last-write time of the file
(LPFILETIME) NULL, // to the converted current system time
(LPFILETIME) NULL,
&ft);
return f;
}