Пример #1
0
        internal static VirtualFile FromFileDescriptor(FILEDESCRIPTOR fd)
        {
            VirtualFile virtualFile = new VirtualFile();

            virtualFile.Name = fd.cFileName;
            if ((fd.dwFlags & FileDescriptorFlags.FD_ATTRIBUTES) == FileDescriptorFlags.FD_ATTRIBUTES)
            {
                virtualFile.Attributes = (FileAttributes)fd.dwFileAttributes;
            }
            if ((fd.dwFlags & FileDescriptorFlags.FD_CREATETIME) == FileDescriptorFlags.FD_CREATETIME)
            {
                virtualFile.CreationTime = NativeUtilities.ToDateTime(fd.ftCreationTime);
            }
            if ((fd.dwFlags & FileDescriptorFlags.FD_ACCESSTIME) == FileDescriptorFlags.FD_ACCESSTIME)
            {
                virtualFile.LastAccessTime = NativeUtilities.ToDateTime(fd.ftLastAccessTime);
            }
            if ((fd.dwFlags & FileDescriptorFlags.FD_WRITESTIME) == FileDescriptorFlags.FD_WRITESTIME)
            {
                virtualFile.LastWriteTime = NativeUtilities.ToDateTime(fd.ftLastWriteTime);
            }
            return(virtualFile);
        }