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