public DuplicatedInformation(byte[] buffer, int offset)
 {
     CreationTime        = StandardInformationRecord.ReadDateTime(buffer, offset + 0x00);
     ModificationTime    = StandardInformationRecord.ReadDateTime(buffer, offset + 0x08);
     MftModificationTime = StandardInformationRecord.ReadDateTime(buffer, offset + 0x10);
     LastAccessTime      = StandardInformationRecord.ReadDateTime(buffer, offset + 0x18);
     AllocatedLength     = LittleEndianConverter.ToUInt64(buffer, offset + 0x20);
     FileSize            = LittleEndianConverter.ToUInt64(buffer, offset + 0x28);
     FileAttributes      = (FileAttributes)LittleEndianConverter.ToUInt32(buffer, offset + 0x30);
     PackedEASize        = LittleEndianConverter.ToUInt16(buffer, offset + 0x34);
 }
示例#2
0
        public FileNameRecord(byte[] buffer, int offset)
        {
            ParentDirectory     = new MftSegmentReference(buffer, offset + 0x00);
            CreationTime        = StandardInformationRecord.ReadDateTime(buffer, offset + 0x08);
            ModificationTime    = StandardInformationRecord.ReadDateTime(buffer, offset + 0x10);
            MftModificationTime = StandardInformationRecord.ReadDateTime(buffer, offset + 0x18);
            LastAccessTime      = StandardInformationRecord.ReadDateTime(buffer, offset + 0x20);
            AllocatedSize       = LittleEndianConverter.ToUInt64(buffer, offset + 0x28);
            RealSize            = LittleEndianConverter.ToUInt64(buffer, offset + 0x30);
            byte fnLen = ByteReader.ReadByte(buffer, offset + 0x40);

            Namespace = (FilenameNamespace)ByteReader.ReadByte(buffer, offset + 0x41);
            FileName  = Encoding.Unicode.GetString(buffer, offset + 0x42, fnLen * 2);
        }
示例#3
0
        public FileNameRecord(byte[] buffer, int offset)
        {
            ParentDirectory     = new MftSegmentReference(buffer, offset + 0x00);
            CreationTime        = StandardInformationRecord.ReadDateTime(buffer, offset + 0x08);
            ModificationTime    = StandardInformationRecord.ReadDateTime(buffer, offset + 0x10);
            MftModificationTime = StandardInformationRecord.ReadDateTime(buffer, offset + 0x18);
            LastAccessTime      = StandardInformationRecord.ReadDateTime(buffer, offset + 0x20);
            AllocatedLength     = LittleEndianConverter.ToUInt64(buffer, offset + 0x28);
            FileSize            = LittleEndianConverter.ToUInt64(buffer, offset + 0x30);
            FileAttributes      = (FileAttributes)LittleEndianConverter.ToUInt32(buffer, offset + 0x38);
            PackedEASize        = LittleEndianConverter.ToUInt16(buffer, offset + 0x3C);
            byte fileNameLength = ByteReader.ReadByte(buffer, offset + 0x40);

            Flags    = (FileNameFlags)ByteReader.ReadByte(buffer, offset + 0x41);
            FileName = Encoding.Unicode.GetString(buffer, offset + 0x42, fileNameLength * 2);
        }