GetFileDateInfo – Retrieve all date information about a file

GetFileDateInfo – Retrieve all date information about a file

Private Type SYSTEMTIME    wYear As Integer    wMonth As Integer    wDayOfWeek As Integer    wDay As Integer    wHour As Integer    wMinute As Integer    wSecond As Integer    wMilliseconds As IntegerEnd TypePrivate Type FILETIME    dwLowDateTime As Long    dwHighDateTime As LongEnd TypePrivate Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal _    lpFileName As String, ByVal dwDesiredAccess As Long, _    ByVal dwShareMode As Long, ByVal NoSecurity As Long, _    ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, _    ByVal hTemplateFile As Long) As LongPrivate Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As _    LongPrivate Declare Function GetFileTime Lib "kernel32" (ByVal hFile As Long, _    lpCreationTime As FILETIME, lpLastAccessTime As FILETIME, _    lpLastWriteTime As FILETIME) As LongPrivate Declare Function FileTimeToSystemTime Lib "kernel32" (lpFileTime As _    FILETIME, lpSystemTime As SYSTEMTIME) As LongPrivate Declare Function FileTimeToLocalFileTime Lib "kernel32" (lpFileTime As _    FILETIME, lpLocalFileTime As FILETIME) As LongPrivate Const GENERIC_READ = &H80000000Private Const FILE_SHARE_READ = &H1Private Const FILE_SHARE_WRITE = &H2Private Const OPEN_EXISTING = 3Private Const INVALID_HANDLE_VALUE = -1' Retrieve the Create date, Modify (write) date and Last Access date of' the specified file. Returns True if successful, False otherwise.Function GetFileTimeInfo(ByVal FileName As String, Optional CreateDate As Date, _    Optional ModifyDate As Date, Optional LastAccessDate As Date) As Boolean    Dim hFile As Long    Dim ftCreate As FILETIME    Dim ftModify As FILETIME    Dim ftLastAccess As FILETIME    Dim ft As FILETIME    Dim st As SYSTEMTIME        ' open the file, exit if error    hFile = CreateFile(FileName, GENERIC_READ, _        FILE_SHARE_READ Or FILE_SHARE_WRITE, 0&, OPEN_EXISTING, 0&, 0&)    If hFile = INVALID_HANDLE_VALUE Then Exit Function        ' read date information    If GetFileTime(hFile, ftCreate, ftLastAccess, ftModify) Then        ' non zero means successful        GetFileTimeInfo = True                ' convert result to date values        ' first, convert UTC file time to local file time        FileTimeToLocalFileTime ftCreate, ft        ' then convert to system time        FileTimeToSystemTime ft, st        ' finally, make up the Date value        CreateDate = DateSerial(st.wYear, st.wMonth, _            st.wDay) + TimeSerial(st.wHour, st.wMinute, _            st.wSecond) + (st.wMilliseconds / 86400000)                ' do the same for the ModifyDate        FileTimeToLocalFileTime ftModify, ft        FileTimeToSystemTime ft, st        ModifyDate = DateSerial(st.wYear, st.wMonth, _            st.wDay) + TimeSerial(st.wHour, st.wMinute, _            st.wSecond) + (st.wMilliseconds / 86400000)        ' and for LastAccessDate        FileTimeToLocalFileTime ftLastAccess, ft        FileTimeToSystemTime ft, st        LastAccessDate = DateSerial(st.wYear, st.wMonth, _            st.wDay) + TimeSerial(st.wHour, st.wMinute, _            st.wSecond) + (st.wMilliseconds / 86400000)    End If        ' close the file, in all cases    CloseHandle hFileEnd Function

Share the Post:
Heading photo, Metadata.

What is Metadata?

What is metadata? Well, It’s an odd concept to wrap your head around. Metadata is essentially the secondary layer of data that tracks details about the “regular” data. The regular

XDR solutions

The Benefits of Using XDR Solutions

Cybercriminals constantly adapt their strategies, developing newer, more powerful, and intelligent ways to attack your network. Since security professionals must innovate as well, more conventional endpoint detection solutions have evolved

AI is revolutionizing fraud detection

How AI is Revolutionizing Fraud Detection

Artificial intelligence – commonly known as AI – means a form of technology with multiple uses. As a result, it has become extremely valuable to a number of businesses across

AI innovation

Companies Leading AI Innovation in 2023

Artificial intelligence (AI) has been transforming industries and revolutionizing business operations. AI’s potential to enhance efficiency and productivity has become crucial to many businesses. As we move into 2023, several