Пример #1
0
        internal short stream; // 34..35

        /// <summary>
        /// </summary>
        /// <param name="bits">
        /// </param>
        /// <param name="readStrings">
        /// </param>
        internal DbiModuleInfo(BitAccess bits, bool readStrings)
        {
            bits.ReadInt32(out this.opened);
            this.section = new DbiSecCon(bits);
            bits.ReadUInt16(out this.flags);
            bits.ReadInt16(out this.stream);
            bits.ReadInt32(out this.cbSyms);
            bits.ReadInt32(out this.cbOldLines);
            bits.ReadInt32(out this.cbLines);
            bits.ReadInt16(out this.files);
            bits.ReadInt16(out this.pad1);
            bits.ReadUInt32(out this.offsets);
            bits.ReadInt32(out this.niSource);
            bits.ReadInt32(out this.niCompiler);
            if (readStrings)
            {
                bits.ReadCString(out this.moduleName);
                bits.ReadCString(out this.objectName);
            }
            else
            {
                bits.SkipCString(out this.moduleName);
                bits.SkipCString(out this.objectName);
            }

            bits.Align(4);

            // if (opened != 0 || pad1 != 0) {
            // throw new PdbException("Invalid DBI module. "+
            // "(opened={0}, pad={1})", opened, pad1);
            // }
        }
Пример #2
0
        internal short stream; // 34..35

        /// <summary>
        /// </summary>
        /// <param name="bits">
        /// </param>
        /// <param name="readStrings">
        /// </param>
        internal DbiModuleInfo(BitAccess bits, bool readStrings)
        {
            bits.ReadInt32(out this.opened);
            this.section = new DbiSecCon(bits);
            bits.ReadUInt16(out this.flags);
            bits.ReadInt16(out this.stream);
            bits.ReadInt32(out this.cbSyms);
            bits.ReadInt32(out this.cbOldLines);
            bits.ReadInt32(out this.cbLines);
            bits.ReadInt16(out this.files);
            bits.ReadInt16(out this.pad1);
            bits.ReadUInt32(out this.offsets);
            bits.ReadInt32(out this.niSource);
            bits.ReadInt32(out this.niCompiler);
            if (readStrings)
            {
                bits.ReadCString(out this.moduleName);
                bits.ReadCString(out this.objectName);
            }
            else
            {
                bits.SkipCString(out this.moduleName);
                bits.SkipCString(out this.objectName);
            }

            bits.Align(4);

            // if (opened != 0 || pad1 != 0) {
            // throw new PdbException("Invalid DBI module. "+
            // "(opened={0}, pad={1})", opened, pad1);
            // }
        }