diff --git a/PInvoke/Kernel32/WinBase.File.cs b/PInvoke/Kernel32/WinBase.File.cs index 7f11b975..57df33cc 100644 --- a/PInvoke/Kernel32/WinBase.File.cs +++ b/PInvoke/Kernel32/WinBase.File.cs @@ -3734,6 +3734,36 @@ namespace Vanara.PInvoke public uint ReparseTag; } + /// Contains the basic information for a file. Used for file handles. + // https://docs.microsoft.com/en-us/windows/win32/api/winbase/ns-winbase-file_basic_info typedef struct _FILE_BASIC_INFO { LARGE_INTEGER + // CreationTime; LARGE_INTEGER LastAccessTime; LARGE_INTEGER LastWriteTime; LARGE_INTEGER ChangeTime; DWORD FileAttributes; } + // FILE_BASIC_INFO, *PFILE_BASIC_INFO; + [PInvokeData("winbase.h", MSDNShortId = "7765e430-cf6b-4ccf-b5e7-9fb6e15ca6d6")] + [StructLayout(LayoutKind.Sequential, Size = 40)] + public struct FILE_BASIC_INFO + { + /// + /// The time the file was created in FILETIME format, which is a 64-bit value representing the number of 100-nanosecond intervals + /// since January 1, 1601 (UTC). + /// + public FILETIME CreationTime; + + /// The time the file was last accessed in FILETIME format. + public FILETIME LastAccessTime; + + /// The time the file was last written to in FILETIME format. + public FILETIME LastWriteTime; + + /// The time the file was changed in FILETIME format. + public FILETIME ChangeTime; + + /// + /// The file attributes. For a list of attributes, see File Attribute Constants. If this is set to 0 in a FILE_BASIC_INFO + /// structure passed to SetFileInformationByHandle then none of the attributes are changed. + /// + public FileFlagsAndAttributes FileAttributes; + } + /// /// Receives file compression information. Used for any handles. Use only when calling GetFileInformationByHandleEx. /// diff --git a/PInvoke/Shared/WinBase/FILE_BASIC_INFO.cs b/PInvoke/Shared/WinBase/FILE_BASIC_INFO.cs deleted file mode 100644 index fbb5d62c..00000000 --- a/PInvoke/Shared/WinBase/FILE_BASIC_INFO.cs +++ /dev/null @@ -1,35 +0,0 @@ -using System.Runtime.InteropServices; -using FILETIME = System.Runtime.InteropServices.ComTypes.FILETIME; - -namespace Vanara.PInvoke -{ - /// Contains the basic information for a file. Used for file handles. - // https://docs.microsoft.com/en-us/windows/win32/api/winbase/ns-winbase-file_basic_info typedef struct _FILE_BASIC_INFO { LARGE_INTEGER - // CreationTime; LARGE_INTEGER LastAccessTime; LARGE_INTEGER LastWriteTime; LARGE_INTEGER ChangeTime; DWORD FileAttributes; } - // FILE_BASIC_INFO, *PFILE_BASIC_INFO; - [PInvokeData("winbase.h", MSDNShortId = "7765e430-cf6b-4ccf-b5e7-9fb6e15ca6d6")] - [StructLayout(LayoutKind.Sequential, Size = 40)] - public struct FILE_BASIC_INFO - { - /// - /// The time the file was created in FILETIME format, which is a 64-bit value representing the number of 100-nanosecond intervals - /// since January 1, 1601 (UTC). - /// - public FILETIME CreationTime; - - /// The time the file was last accessed in FILETIME format. - public FILETIME LastAccessTime; - - /// The time the file was last written to in FILETIME format. - public FILETIME LastWriteTime; - - /// The time the file was changed in FILETIME format. - public FILETIME ChangeTime; - - /// - /// The file attributes. For a list of attributes, see File Attribute Constants. If this is set to 0 in a FILE_BASIC_INFO - /// structure passed to SetFileInformationByHandle then none of the attributes are changed. - /// - public FileFlagsAndAttributes FileAttributes; - } -} \ No newline at end of file