Поделиться через


PEReader Конструкторы

Определение

Перегрузки

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>)

Исходный код:
PEReader.cs
Исходный код:
PEReader.cs
Исходный код:
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)

Исходный код:
PEReader.cs
Исходный код:
PEReader.cs
Исходный код:
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)

Исходный код:
PEReader.cs
Исходный код:
PEReader.cs
Исходный код:
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)

Исходный код:
PEReader.cs
Исходный код:
PEReader.cs
Исходный код:
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)

Исходный код:
PEReader.cs
Исходный код:
PEReader.cs
Исходный код:
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

Значение true, если образ PE был загружен в память загрузчиком ОС; в противном случае значение false.

Исключения

peImage имеет значение Zero.

size является отрицательным значением.

Комментарии

Память принадлежит вызывающей объекту и не освобождается при удалении PEReader . Вызывающий объект отвечает за сохранение памяти в активном и неизмененном состоянии на протяжении PEReaderвсего времени существования .

Содержимое изображения не считывается во время создания PEReader

Применяется к

PEReader(Stream, PEStreamOptions, Int32)

Исходный код:
PEReader.cs
Исходный код:
PEReader.cs
Исходный код:
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 после создания.

Применяется к