Exemple #1
0
 public FatDirectoryEntry(Buffer buffer)
 {
     DirName         = new BufferByteString(buffer, 0, 11, Encoding.Default);
     DirAttr         = new BufferUInt8(buffer, 11);
     DirNtRes        = new BufferUInt8(buffer, 12);
     DirCrtTimeTenth = new BufferUInt8(buffer, 13);
     DirCrtTime      = new BufferUInt16(buffer, 14);
     DirCrtDate      = new BufferUInt16(buffer, 16);
     DirLastAccDate  = new BufferUInt16(buffer, 18);
     DirFstClusHI    = new BufferUInt16(buffer, 20);
     DirWrtTime      = new BufferUInt16(buffer, 22);
     DirWrtDate      = new BufferUInt16(buffer, 24);
     DirFstClusLO    = new BufferUInt16(buffer, 26);
     DirFileSize     = new BufferUInt32(buffer, 28);
 }
Exemple #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ExFatBootSector"/> class.
        /// </summary>
        internal ExFatBootSector(byte[] bytes)
        {
            _bytes = bytes;
            var buffer = new Buffer(_bytes);

            JmpBoot              = new BufferBytes(buffer, 0, 3);
            OemName              = new BufferByteString(buffer, 3, 8);
            VolumeLengthSectors  = new BufferUInt64(buffer, 72);
            FatOffsetSector      = new BufferUInt32(buffer, 80);
            FatLengthSectors     = new BufferUInt32(buffer, 84);
            ClusterOffsetSector  = new BufferUInt32(buffer, 88);
            ClusterCount         = new BufferUInt32(buffer, 92);
            RootDirectoryCluster = new BufferUInt32(buffer, 96);
            VolumeSerialNumber   = new BufferUInt32(buffer, 100);
            FileSystemRevision   = new BufferUInt16(buffer, 104);
            VolumeFlags          = new BufferUInt16(buffer, 106);
            BytesPerSector       = new CacheValueProvider <uint>(new ShiftValueProvider(new BufferUInt8(buffer, 108)));
            SectorsPerCluster    = new ShiftValueProvider(new BufferUInt8(buffer, 109));
            NumberOfFats         = new BufferUInt8(buffer, 110);
            DriveSelect          = new BufferUInt8(buffer, 111);
            PercentInUse         = new BufferUInt8(buffer, 112);
        }