PEReader 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供可移植可执行格式 (PE) 文件的读取器。
public ref class PEReader sealed : IDisposablepublic sealed class PEReader : IDisposabletype PEReader = class
    interface IDisposablePublic 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) 。 |