PEReader 构造函数
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
PEReader(ImmutableArray<Byte>) |
通过存储在字节数组中的 PE 映像创建可移植可执行文件读取器。 |
PEReader(Stream) |
通过存储在流中的 PE 映像创建可移植可执行文件读取器。 |
PEReader(Byte*, Int32) |
通过存储在内存中的 PE 映像创建可移植可执行文件读取器。 |
PEReader(Stream, PEStreamOptions) |
通过存储在流中的 PE 映像创建可移植可执行文件读取器,从其当前位置开始,并在流的末尾结束。 |
PEReader(Byte*, Int32, Boolean) |
通过存储在内存中的 PE 映像创建可移植可执行文件读取器。 一个标志,用于指示该映像是否已加载到内存中。 |
PEReader(Stream, PEStreamOptions, Int32) |
从流的当前位置开始,通过给定大小的 PE 映像创建可移植可执行文件读取器。 |
PEReader(ImmutableArray<Byte>)
- Source:
- PEReader.cs
- Source:
- PEReader.cs
- Source:
- PEReader.cs
通过存储在字节数组中的 PE 映像创建可移植可执行文件读取器。
public:
PEReader(System::Collections::Immutable::ImmutableArray<System::Byte> peImage);
public PEReader (System.Collections.Immutable.ImmutableArray<byte> peImage);
new System.Reflection.PortableExecutable.PEReader : System.Collections.Immutable.ImmutableArray<byte> -> System.Reflection.PortableExecutable.PEReader
Public Sub New (peImage As ImmutableArray(Of Byte))
参数
- peImage
- ImmutableArray<Byte>
表示 PE 映像的不可变字节数组。
例外
peImage
上声明的默认值为 null
。
注解
在 构造期间不读取图像的内容 PEReader
适用于
PEReader(Stream)
- Source:
- PEReader.cs
- Source:
- PEReader.cs
- Source:
- PEReader.cs
通过存储在流中的 PE 映像创建可移植可执行文件读取器。
public:
PEReader(System::IO::Stream ^ peStream);
public PEReader (System.IO.Stream peStream);
new System.Reflection.PortableExecutable.PEReader : System.IO.Stream -> System.Reflection.PortableExecutable.PEReader
Public Sub New (peStream As Stream)
参数
- peStream
- Stream
PE 映像流。
例外
peStream
为 null
。
注解
成功验证构造函数参数后, PEReader 流的所有权将转移到 。 它将由 PEReader 释放,调用方不得对其进行操作。
适用于
PEReader(Byte*, Int32)
- Source:
- PEReader.cs
- Source:
- PEReader.cs
- Source:
- PEReader.cs
通过存储在内存中的 PE 映像创建可移植可执行文件读取器。
public:
PEReader(System::Byte* peImage, int size);
public PEReader (byte* peImage, int size);
new System.Reflection.PortableExecutable.PEReader : nativeptr<byte> * int -> System.Reflection.PortableExecutable.PEReader
参数
- peImage
- Byte*
指向 PE 映像开头的指针。
- size
- Int32
PE 映像的大小。
例外
peImage
上声明的默认值为 Zero。
size
为负数。
注解
内存归调用方所有,在处置 PEReader时不会释放。 调用方负责在 的整个生存期内 PEReader使内存保持活动状态和未修改。
在 构造期间不读取图像的内容 PEReader
适用于
PEReader(Stream, PEStreamOptions)
- Source:
- PEReader.cs
- Source:
- PEReader.cs
- Source:
- PEReader.cs
通过存储在流中的 PE 映像创建可移植可执行文件读取器,从其当前位置开始,并在流的末尾结束。
public:
PEReader(System::IO::Stream ^ peStream, System::Reflection::PortableExecutable::PEStreamOptions options);
public PEReader (System.IO.Stream peStream, System.Reflection.PortableExecutable.PEStreamOptions options);
new System.Reflection.PortableExecutable.PEReader : System.IO.Stream * System.Reflection.PortableExecutable.PEStreamOptions -> System.Reflection.PortableExecutable.PEReader
Public Sub New (peStream As Stream, options As PEStreamOptions)
参数
- peStream
- Stream
PE 映像流。
- options
- PEStreamOptions
用于指定如何从流中读取 PE 映像各部分的选项。
例外
peStream
为 null
。
options
具有无效值。
从流中读取时出错(仅在预提取数据时发生)。
PrefetchMetadata 已指定,并且映像的 PE 标头无效。
注解
除非 PEStreamOptions.LeaveOpen 指定 ,否则在成功进行参数验证后,流的所有权将转移到 PEReader 。 它将由 PEReader 释放,调用方不得对其进行操作。
除非 PEStreamOptions.PrefetchMetadata 指定 或 PEStreamOptions.PrefetchEntireImage ,否则在 构造 PEReader期间不会从流中读取任何数据。 此外,当 处于活动状态且不受干扰时 PEReader ,不得由调用方操作流。
如果 options
包含 PEStreamOptions.PrefetchMetadata 或 PEStreamOptions.PrefetchEntireImage, PEReader 则 将读取构造期间请求的所有数据。 因此,如果 PEStreamOptions.LeaveOpen 还指定 了 ,则调用方将保留流的完全所有权,并保证在构造后不会对其进行 PEReader 操作。
适用于
PEReader(Byte*, Int32, Boolean)
- Source:
- PEReader.cs
- Source:
- PEReader.cs
- Source:
- PEReader.cs
通过存储在内存中的 PE 映像创建可移植可执行文件读取器。 一个标志,用于指示该映像是否已加载到内存中。
public:
PEReader(System::Byte* peImage, int size, bool isLoadedImage);
public PEReader (byte* peImage, int size, bool isLoadedImage);
new System.Reflection.PortableExecutable.PEReader : nativeptr<byte> * int * bool -> System.Reflection.PortableExecutable.PEReader
参数
- peImage
- Byte*
指向 PE 映像开头的指针。
- size
- Int32
PE 映像的大小。
- isLoadedImage
- Boolean
如果 OS 加载程序已将 PE 映像加载到内存中,则为 true
;否则为 false
。
例外
peImage
上声明的默认值为 Zero。
size
为负数。
注解
内存归调用方所有,在释放 时 PEReader 不会释放。 调用方负责在 的整个生存期内 PEReader使内存保持活动状态和未修改。
在 构造期间不读取图像的内容 PEReader
适用于
PEReader(Stream, PEStreamOptions, Int32)
- Source:
- PEReader.cs
- Source:
- PEReader.cs
- Source:
- PEReader.cs
从流的当前位置开始,通过给定大小的 PE 映像创建可移植可执行文件读取器。
public:
PEReader(System::IO::Stream ^ peStream, System::Reflection::PortableExecutable::PEStreamOptions options, int size);
public PEReader (System.IO.Stream peStream, System.Reflection.PortableExecutable.PEStreamOptions options, int size);
new System.Reflection.PortableExecutable.PEReader : System.IO.Stream * System.Reflection.PortableExecutable.PEStreamOptions * int -> System.Reflection.PortableExecutable.PEReader
Public Sub New (peStream As Stream, options As PEStreamOptions, size As Integer)
参数
- peStream
- Stream
PE 映像流。
- options
- PEStreamOptions
用于指定如何从流中读取 PE 映像各部分的选项。
- size
- Int32
PE 映像大小。
例外
size
为负或超出了流的末尾。
从流中读取时出错(仅在预提取数据时发生)。
PrefetchMetadata 已指定,并且映像的 PE 标头无效。
注解
除非 PEStreamOptions.LeaveOpen 指定 ,否则在成功进行参数验证后,流的所有权将转移到 PEReader 。 它将由 PEReader释放,并且调用方不得对其进行操作。
除非 PEStreamOptions.PrefetchMetadata 指定 或 PEStreamOptions.PrefetchEntireImage ,否则在 构造 PEReader期间不会从流中读取任何数据。 此外,当 处于活动状态且不受干扰时 PEReader ,不得由调用方操作流。
如果 options
包含 PEStreamOptions.PrefetchMetadata 或 PEStreamOptions.PrefetchEntireImage 值, PEReader 则 将读取构造期间请求的所有数据。 因此,如果 PEStreamOptions.LeaveOpen 还指定 了 ,则调用方将保留流的完全所有权,并保证在构造后不会对其进行 PEReader 操作。