PEReader Класс

Определение

Предоставляет средство чтения для переносимых исполняемых (PE) файлов.Provides a reader for Portable Executable format (PE) files.

public ref class PEReader sealed : IDisposable
public sealed class PEReader : IDisposable
type PEReader = class
    interface IDisposable
Public NotInheritable Class PEReader
Implements IDisposable
Наследование
PEReader
Реализации

Комментарии

Реализация является потокобезопасной.The implementation is thread-safe. То есть несколько потоков могут считывать данные из модуля чтения параллельно.That is, multiple threads can read data from the reader in parallel. Удаление модуля чтения не является потокобезопасным (см Dispose() . раздел).Disposal of the reader is not thread-safe (see Dispose()).

Конструкторы

PEReader(Byte*, Int32)

Создает средство чтения переносимых исполняемых файлов с использованием образа PE, хранящегося в памяти.Creates a Portable Executable reader over a PE image stored in memory.

PEReader(Byte*, Int32, Boolean)

Создает средство чтения переносимых исполняемых файлов с использованием образа PE, хранящегося в памяти.Creates a Portable Executable reader over a PE image stored in memory. Флаг указывает, был ли образ уже загружен в память.A flag indicates whether the image has already been loaded into memory.

PEReader(ImmutableArray<Byte>)

Создает средство чтения переносимых исполняемых файлов с использованием образа PE, хранящегося в массиве байтов.Creates a Portable Executable reader over a PE image stored in a byte array.

PEReader(Stream)

Создает средство чтения переносимых исполняемых файлов с использованием образа PE, хранящегося в потоке.Creates a Portable Executable reader over a PE image stored in a stream.

PEReader(Stream, PEStreamOptions)

Создает средство чтения переносимых исполняемых файлов с использованием образа PE, который хранится в потоке, начиная с его текущей позиции и заканчивая концом потока.Creates a Portable Executable reader over a PE image stored in a stream beginning at its current position and ending at the end of the stream.

PEReader(Stream, PEStreamOptions, Int32)

Создает средство чтения переносимых исполняемых файлов с использованием образа PE заданного размера, начиная с текущей позиции потока.Creates a Portable Executable reader over a PE image of the given size beginning at the stream's current position.

Свойства

HasMetadata

Возвращает значение, которое указывает, содержит ли образ PE метаданные CLI.Gets a value that indicates if the PE image contains CLI metadata.

IsEntireImageAvailable

Возвращает значение, которое указывает, может ли средство чтения получить доступ ко всему образу PE.Gets a value that indicates if the reader can access the entire PE image.

IsLoadedImage

Возвращает значение, которое указывает, был ли образ PE загружен в память загрузчиком ОС.Gets a value that indicates if the PE image has been loaded into memory by the OS loader.

PEHeaders

Возвращает заголовки PE.Gets the PE headers.

Методы

Dispose()

Удаляет весь объем памяти, выделенный средством чтения.Disposes all memory allocated by the reader.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GetEntireImage()

Возвращает объект PEMemoryBlock, содержащий весь образ PE.Gets a PEMemoryBlock object containing the entire PE image.

GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetMetadata()

Загружает раздел PE, содержащий метаданные CLI.Loads a PE section that contains CLI metadata.

GetSectionData(Int32)

Загружает раздел PE, который содержит указанный относительный виртуальный адрес, в память и возвращает блок памяти, который начинается с этого адреса и заканчивается в конце содержащего его раздела.Loads the PE section that contains the specified relative virtual address into memory and returns a memory block that starts at that address and ends at the end of the containing section.

GetSectionData(String)

Загружает раздел PE с указанным именем в память и возвращает блок памяти, охватывающий этот раздел.Loads the PE section with the specified name into memory and returns a memory block that spans the section.

GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ReadCodeViewDebugDirectoryData(DebugDirectoryEntry)

Считывает данные, на которые указывает заданная запись каталога отладки, и интерпретирует их как CodeView.Reads the data pointed to by the specified Debug Directory entry and interprets it as CodeView.

ReadDebugDirectory()

Считывает все записи в таблице каталога отладки.Reads all Debug Directory table entries.

ReadEmbeddedPortablePdbDebugDirectoryData(DebugDirectoryEntry)

Считывает данные, на которые указывает заданная запись каталога отладки, и интерпретирует их как BLOB-объект внедренного переносимого PDB.Reads the data pointed to by the specified Debug Directory entry and interprets it as an Embedded Portable PDB blob.

ReadPdbChecksumDebugDirectoryData(DebugDirectoryEntry)

Считывает данные, на которые указывает заданная запись каталога отладки, и интерпретирует их как запись контрольной суммы PDB.Reads the data pointed to by the specified Debug Directory entry and interprets it as a PDB Checksum entry.

ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)
TryOpenAssociatedPortablePdb(String, Func<String,Stream>, MetadataReaderProvider, String)

Открывает переносимый PDB, связанный с этим образом PE.Opens a Portable PDB associated with this PE image.

Методы расширения

GetMetadataReader(PEReader)

Возвращает объект MetadataReader из PEReader.Gets a MetadataReader from a PEReader.

GetMetadataReader(PEReader, MetadataReaderOptions)

Возвращает модуль чтения метаданных с заданной конфигурацией чтения метаданных из PEReader.Gets a metadata reader with the specified metadata reading configuration from a PEReader.

GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder)

Возвращает модуль чтения метаданных с заданной конфигурацией чтения метаданных и конфигурацией кодировки из PEReader.Gets a metadata reader with the specified metadata reading configuration and encoding configuration from a PEReader.

GetMethodBody(PEReader, Int32)

Возвращает блок тела метода с указанным относительным виртуальным адресом.Returns a body block of a method with the specified Relative Virtual Address (RVA);

Применяется к