PEReader Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет средство чтения для переносимых исполняемых (PE) файлов.
public ref class PEReader sealed : IDisposable
public sealed class PEReader : IDisposable
type PEReader = class
interface IDisposable
Public NotInheritable Class PEReader
Implements IDisposable
- Наследование
-
PEReader
- Реализации
Комментарии
Реализация является потокобезопасной. То есть несколько потоков могут параллельно считывать данные из средства чтения. Удаление средства чтения не является потокобезопасной (см. раздел Dispose()).
Конструкторы
PEReader(Byte*, Int32) |
Создает средство чтения переносимых исполняемых файлов с использованием образа PE, хранящегося в памяти. |
PEReader(Byte*, Int32, Boolean) |
Создает средство чтения переносимых исполняемых файлов с использованием образа PE, хранящегося в памяти. Флаг указывает, был ли образ уже загружен в память. |
PEReader(ImmutableArray<Byte>) |
Создает средство чтения переносимых исполняемых файлов с использованием образа PE, хранящегося в массиве байтов. |
PEReader(Stream) |
Создает средство чтения переносимых исполняемых файлов с использованием образа PE, хранящегося в потоке. |
PEReader(Stream, PEStreamOptions) |
Создает средство чтения переносимых исполняемых файлов с использованием образа PE, который хранится в потоке, начиная с его текущей позиции и заканчивая концом потока. |
PEReader(Stream, PEStreamOptions, Int32) |
Создает средство чтения переносимых исполняемых файлов с использованием образа PE заданного размера, начиная с текущей позиции потока. |
Свойства
HasMetadata |
Возвращает значение, которое указывает, содержит ли образ PE метаданные CLI. |
IsEntireImageAvailable |
Возвращает значение, которое указывает, может ли средство чтения получить доступ ко всему образу PE. |
IsLoadedImage |
Возвращает значение, которое указывает, был ли образ PE загружен в память загрузчиком ОС. |
PEHeaders |
Возвращает заголовки PE. |
Методы
Dispose() |
Удаляет весь объем памяти, выделенный средством чтения. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetEntireImage() |
Возвращает объект PEMemoryBlock, содержащий весь образ PE. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetMetadata() |
Загружает раздел PE, содержащий метаданные CLI. |
GetSectionData(Int32) |
Загружает раздел PE, который содержит указанный относительный виртуальный адрес, в память и возвращает блок памяти, который начинается с этого адреса и заканчивается в конце содержащего его раздела. |
GetSectionData(String) |
Загружает раздел PE с указанным именем в память и возвращает блок памяти, охватывающий этот раздел. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ReadCodeViewDebugDirectoryData(DebugDirectoryEntry) |
Считывает данные, на которые указывает заданная запись каталога отладки, и интерпретирует их как CodeView. |
ReadDebugDirectory() |
Считывает все записи в таблице каталога отладки. |
ReadEmbeddedPortablePdbDebugDirectoryData(DebugDirectoryEntry) |
Считывает данные, на которые указывает заданная запись каталога отладки, и интерпретирует их как BLOB-объект внедренного переносимого PDB. |
ReadPdbChecksumDebugDirectoryData(DebugDirectoryEntry) |
Считывает данные, на которые указывает заданная запись каталога отладки, и интерпретирует их как запись контрольной суммы PDB. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
TryOpenAssociatedPortablePdb(String, Func<String,Stream>, MetadataReaderProvider, String) |
Открывает переносимый PDB, связанный с этим образом PE. |
Методы расширения
GetMetadataReader(PEReader) |
Возвращает объект MetadataReader из PEReader. |
GetMetadataReader(PEReader, MetadataReaderOptions) |
Получает средство чтения метаданных с указанной конфигурацией чтения метаданных из PEReader. |
GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder) |
Возвращает модуль чтения метаданных с заданной конфигурацией чтения метаданных и конфигурацией кодировки из PEReader. |
GetMethodBody(PEReader, Int32) |
Возвращает блок тела метода с указанным относительным виртуальным адресом (RVA). |