Пример #1
0
        private void ReadFooter(Ibasa.IO.BinaryReader reader)
        {
            if (reader.PeekChar() == -1)
            {
                return; //end of stream or cant seek no footer possible
            }
            reader.BaseStream.Seek(-26, SeekOrigin.End);

            long   extensionOffset = reader.ReadUInt32();
            long   developerOffset = reader.ReadUInt32();
            string signature       = new string(reader.ReadChars(18));

            if (signature != "TRUEVISION-XFILE.\0")
            {
                return;
            }

            if (extensionOffset != 0)
            {
                reader.BaseStream.Seek(extensionOffset, SeekOrigin.Begin);
                ReadExtension(reader);
            }
            if (developerOffset != 0)
            {
                reader.BaseStream.Seek(developerOffset, SeekOrigin.Begin);
                ReadDeveloper(reader);
            }
        }