Freigeben über


PEReader Konstruktoren

Definition

Überlädt

PEReader(ImmutableArray<Byte>)

Erstellt einen PE-Reader über ein PE-Image, das in einem Bytearray gespeichert ist.

PEReader(Stream)

Erstellt einen PE-Reader über ein PE-Image, das in einem Datenstrom gespeichert ist.

PEReader(Byte*, Int32)

Erstellt einen PE-Reader über ein PE-Image, das im Arbeitsspeicher gespeichert ist.

PEReader(Stream, PEStreamOptions)

Erstellt einen PE-Reader über ein PE-Image, das in einem Datenstrom gespeichert ist. Der Anfang liegt dabei bei der aktuellen Position, das Ende am Ende des Datenstroms.

PEReader(Byte*, Int32, Boolean)

Erstellt einen PE-Reader über ein PE-Image, das im Arbeitsspeicher gespeichert ist. Ein Kennzeichen gibt an, ob das Image bereits in den Arbeitsspeicher geladen wurde.

PEReader(Stream, PEStreamOptions, Int32)

Erstellt einen PE-Reader über ein PE-Image der angegebenen Größe. Der Anfang liegt dabei bei der aktuellen Position des Datenstroms.

PEReader(ImmutableArray<Byte>)

Quelle:
PEReader.cs
Quelle:
PEReader.cs
Quelle:
PEReader.cs

Erstellt einen PE-Reader über ein PE-Image, das in einem Bytearray gespeichert ist.

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

Parameter

peImage
ImmutableArray<Byte>

Ein unveränderliches Bytearray, das das PE-Image darstellt.

Ausnahmen

peImage ist null

Hinweise

Der Inhalt des Bilds wird während der Erstellung des PEReader

Gilt für:

PEReader(Stream)

Quelle:
PEReader.cs
Quelle:
PEReader.cs
Quelle:
PEReader.cs

Erstellt einen PE-Reader über ein PE-Image, das in einem Datenstrom gespeichert ist.

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)

Parameter

peStream
Stream

PE-Imagedatenstrom.

Ausnahmen

peStream ist null.

Hinweise

Der Besitz des Datenstroms wird bei erfolgreicher Validierung von Konstruktorargumenten an das PEReader übertragen. Sie wird vom PEReader verworfen, und der Aufrufer darf sie nicht bearbeiten.

Gilt für:

PEReader(Byte*, Int32)

Quelle:
PEReader.cs
Quelle:
PEReader.cs
Quelle:
PEReader.cs

Erstellt einen PE-Reader über ein PE-Image, das im Arbeitsspeicher gespeichert ist.

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

Parameter

peImage
Byte*

Ein Zeiger auf den Anfang des PE-Image.

size
Int32

Die Größe des PE-Images.

Ausnahmen

size ist ein negativer Wert.

Hinweise

Der Speicher gehört dem Aufrufer und wird nicht bei der Verfügung von PEReaderfreigegeben. Der Aufrufer ist dafür verantwortlich, den Arbeitsspeicher während der gesamten Lebensdauer von PEReaderunverändert zu halten.

Der Inhalt des Bilds wird während der Erstellung des PEReader

Gilt für:

PEReader(Stream, PEStreamOptions)

Quelle:
PEReader.cs
Quelle:
PEReader.cs
Quelle:
PEReader.cs

Erstellt einen PE-Reader über ein PE-Image, das in einem Datenstrom gespeichert ist. Der Anfang liegt dabei bei der aktuellen Position, das Ende am Ende des Datenstroms.

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)

Parameter

peStream
Stream

Ein PE-Imagedatenstrom.

options
PEStreamOptions

Optionen, die angeben, wie Abschnitte des PE-Image aus dem Datenstrom gelesen werden.

Ausnahmen

peStream ist null.

options besitzt einen ungültigen Wert.

Fehler beim Lesen aus dem Datenstrom (nur beim Vorabrufen von Daten).

PrefetchMetadata wird angegeben, und die PE-Header des Image sind ungültig.

Hinweise

Sofern nicht PEStreamOptions.LeaveOpen angegeben, wird der Besitz des Datenstroms bei erfolgreicher Argumentvalidierung an das PEReader übertragen. Sie wird vom PEReader verworfen, und der Aufrufer darf sie nicht bearbeiten.

Wenn oder PEStreamOptions.PrefetchMetadataPEStreamOptions.PrefetchEntireImage nicht angegeben ist, werden während der Erstellung von PEReaderkeine Daten aus dem Stream gelesen. Darüber hinaus darf der Stream nicht vom Aufrufer bearbeitet werden, während der PEReader aktiv ist und nicht verschoben wird.

Wenn options oder PEStreamOptions.PrefetchEntireImageeinschließtPEStreamOptions.PrefetchMetadata, hat die PEReader alle während des Bauvorgangs angeforderten Daten gelesen. PEStreamOptions.LeaveOpen Wenn also auch angegeben ist, behält der Aufrufer den vollständigen Besitz des Datenstroms und ist sicher, dass er nach der PEReader Erstellung nicht bearbeitet wird.

Gilt für:

PEReader(Byte*, Int32, Boolean)

Quelle:
PEReader.cs
Quelle:
PEReader.cs
Quelle:
PEReader.cs

Erstellt einen PE-Reader über ein PE-Image, das im Arbeitsspeicher gespeichert ist. Ein Kennzeichen gibt an, ob das Image bereits in den Arbeitsspeicher geladen wurde.

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

Parameter

peImage
Byte*

Ein Zeiger auf den Anfang des PE-Image.

size
Int32

Die Größe des PE-Images.

isLoadedImage
Boolean

true, wenn das PE-Image durch das Betriebssystem-Ladeprogramm in den Arbeitsspeicher geladen wurde. Andernfalls false.

Ausnahmen

size ist ein negativer Wert.

Hinweise

Der Speicher gehört dem Aufrufer und wird nicht freigegeben, wenn der PEReader verworfen wird. Der Aufrufer ist dafür verantwortlich, den Arbeitsspeicher während der gesamten Lebensdauer von PEReaderunverändert zu halten.

Der Inhalt des Bilds wird während der Erstellung des PEReader

Gilt für:

PEReader(Stream, PEStreamOptions, Int32)

Quelle:
PEReader.cs
Quelle:
PEReader.cs
Quelle:
PEReader.cs

Erstellt einen PE-Reader über ein PE-Image der angegebenen Größe. Der Anfang liegt dabei bei der aktuellen Position des Datenstroms.

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)

Parameter

peStream
Stream

Ein PE-Imagedatenstrom.

options
PEStreamOptions

Optionen, die angeben, wie Abschnitte des PE-Image aus dem Datenstrom gelesen werden.

size
Int32

Die Größe des PE-Image.

Ausnahmen

size ist negativ oder erstreckt sich über das Ende des Datenstroms hinaus.

Fehler beim Lesen aus dem Datenstrom (nur beim Vorabrufen von Daten).

PrefetchMetadata wird angegeben, und die PE-Header des Image sind ungültig.

Hinweise

Sofern nicht PEStreamOptions.LeaveOpen angegeben, wird der Besitz des Datenstroms bei erfolgreicher Argumentvalidierung an das PEReader übertragen. Sie wird vom PEReaderverworfen, und der Aufrufer darf sie nicht bearbeiten.

Wenn oder PEStreamOptions.PrefetchMetadataPEStreamOptions.PrefetchEntireImage nicht angegeben ist, werden während der Erstellung von PEReaderkeine Daten aus dem Stream gelesen. Darüber hinaus darf der Stream nicht vom Aufrufer bearbeitet werden, während der PEReader aktiv ist und nicht entfernt wird.

Wenn options die - oder PEStreamOptions.PrefetchEntireImage -PEStreamOptions.PrefetchMetadataWerte enthalten sind, hat der PEReader alle während des Bauvorgangs angeforderten Daten gelesen. PEStreamOptions.LeaveOpen Wenn also auch angegeben ist, behält der Aufrufer den vollständigen Besitz des Datenstroms und ist sicher, dass er nach der PEReader Erstellung nicht bearbeitet wird.

Gilt für: