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

获取一个值,该值指示 OS 加载程序是否已将 PE 映像加载到内存中。

PEHeaders

获取 PE 标头。

方法

Dispose()

释放由读取器分配的所有内存。

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetEntireImage()

获取包含整个 PE 映像的 PEMemoryBlock 对象。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetMetadata()

加载包含 CLI 元数据的 PE 部分。

GetSectionData(Int32)

将包含指定的相对虚拟地址的 PE 部分加载到内存中,并返回从该地址开始、至包含部分结尾终止的内存块。

GetSectionData(String)

将具有指定名称的 PE 部分加载到内存中,并返回跨越该部分的内存块。

GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ReadCodeViewDebugDirectoryData(DebugDirectoryEntry)

读取指定的调试目录项指向的数据,并将其解释为 CodeView。

ReadDebugDirectory()

读取所有调试目录表项。

ReadEmbeddedPortablePdbDebugDirectoryData(DebugDirectoryEntry)

读取指定的调试目录项指向的数据,并将其解释为嵌入式可移植 PDB blob。

ReadPdbChecksumDebugDirectoryData(DebugDirectoryEntry)

读取指定的调试目录项指向的数据,并将其解释为 PDB 校验和项。

ToString()

返回表示当前对象的字符串。

(继承自 Object)
TryOpenAssociatedPortablePdb(String, Func<String,Stream>, MetadataReaderProvider, String)

打开与此 PE 映像关联的可移植 PDB。

扩展方法

GetMetadataReader(PEReader)

PEReader 中获取一个 MetadataReader

GetMetadataReader(PEReader, MetadataReaderOptions)

从 获取具有指定元数据读取配置的元数据读取器 PEReader

GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder)

获取元数据读取器,其中包含 PEReader 中指定的的元数据读取配置和编码配置。

GetMethodBody(PEReader, Int32)

返回具有指定相对虚拟地址的方法的正文块 (RVA) 。

适用于