From 5e96a5c44c3c78a901d77297517fa4842a297eb9 Mon Sep 17 00:00:00 2001 From: Mounir IDRASSI Date: Sun, 8 Dec 2019 22:51:49 +0100 Subject: Windows: enhancements to the mechanism preserving file timestamps, especially for keyfiles. --- src/Format/Tcformat.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/Format') diff --git a/src/Format/Tcformat.c b/src/Format/Tcformat.c index dba64c20..013e27ca 100644 --- a/src/Format/Tcformat.c +++ b/src/Format/Tcformat.c @@ -3313,6 +3313,12 @@ BOOL IsSparseFile (HWND hwndDlg) if (bPreserveTimestamp) { + FILETIME ftLastAccessTime; + ftLastAccessTime.dwHighDateTime = 0xFFFFFFFF; + ftLastAccessTime.dwLowDateTime = 0xFFFFFFFF; + + SetFileTime (hFile, NULL, &ftLastAccessTime, NULL); + if (GetFileTime (hFile, NULL, &ftLastAccessTime, NULL) == 0) bTimeStampValid = FALSE; else @@ -3352,6 +3358,12 @@ BOOL GetFileVolSize (HWND hwndDlg, unsigned __int64 *size) if (bPreserveTimestamp) { + FILETIME ftLastAccessTime; + ftLastAccessTime.dwHighDateTime = 0xFFFFFFFF; + ftLastAccessTime.dwLowDateTime = 0xFFFFFFFF; + + SetFileTime (hFile, NULL, &ftLastAccessTime, NULL); + if (GetFileTime (hFile, NULL, &ftLastAccessTime, NULL) == 0) bTimeStampValid = FALSE; else -- cgit v1.2.3