AsmResolver.ReadingContext.CreateSubContext C# (CSharp) Метод

CreateSubContext() публичный Метод

public CreateSubContext ( long address ) : ReadingContext
address long
Результат ReadingContext
        public ReadingContext CreateSubContext(long address)
        {
            return new ReadingContext()
            {
                Assembly = Assembly,
                Reader = Reader.CreateSubReader(address),
            };
        }

Same methods

ReadingContext::CreateSubContext ( long address, int size ) : ReadingContext

Usage Example

Пример #1
0
        internal static ImageResourceDirectoryEntry FromReadingContext(ReadingContext context)
        {
            var reader            = context.Reader;
            var resourceDirectory =
                context.Assembly.NtHeaders.OptionalHeader.DataDirectories[ImageDataDirectory.ResourceDirectoryIndex];

            var entry = new ImageResourceDirectoryEntry
            {
                StartOffset  = reader.Position,
                NameId       = reader.ReadUInt32(),
                OffsetToData = reader.ReadUInt32(),
            };

            entry.HasData = (entry.OffsetToData >> 31) == 0;

            uint actualDataOffset = entry.OffsetToData & ~(1 << 31);

            entry.HasName = (entry.NameId >> 31) == 1;
            if (entry.HasName)
            {
                entry._nameReadingContext =
                    context.CreateSubContext(context.Assembly.RvaToFileOffset(resourceDirectory.VirtualAddress) +
                                             (entry.NameId & ~(1 << 31)));
            }

            entry._dataReadingContext =
                context.CreateSubContext(context.Assembly.RvaToFileOffset(resourceDirectory.VirtualAddress) +
                                         actualDataOffset);
            return(entry);
        }
All Usage Examples Of AsmResolver.ReadingContext::CreateSubContext
ReadingContext