PEHeaderBuilder Konstruktor

Definition

Initialisiert eine neue Instanz der PEHeader-Klasse.

public PEHeaderBuilder(System.Reflection.PortableExecutable.Machine machine = System.Reflection.PortableExecutable.Machine.Unknown, int sectionAlignment = 8192, int fileAlignment = 512, ulong imageBase = 4194304, byte majorLinkerVersion = 48, byte minorLinkerVersion = 0, ushort majorOperatingSystemVersion = 4, ushort minorOperatingSystemVersion = 0, ushort majorImageVersion = 0, ushort minorImageVersion = 0, ushort majorSubsystemVersion = 4, ushort minorSubsystemVersion = 0, System.Reflection.PortableExecutable.Subsystem subsystem = System.Reflection.PortableExecutable.Subsystem.WindowsCui, System.Reflection.PortableExecutable.DllCharacteristics dllCharacteristics = System.Reflection.PortableExecutable.DllCharacteristics.DynamicBase | System.Reflection.PortableExecutable.DllCharacteristics.NoSeh | System.Reflection.PortableExecutable.DllCharacteristics.NxCompatible | System.Reflection.PortableExecutable.DllCharacteristics.TerminalServerAware, System.Reflection.PortableExecutable.Characteristics imageCharacteristics = System.Reflection.PortableExecutable.Characteristics.Dll, ulong sizeOfStackReserve = 1048576, ulong sizeOfStackCommit = 4096, ulong sizeOfHeapReserve = 1048576, ulong sizeOfHeapCommit = 4096);
new System.Reflection.PortableExecutable.PEHeaderBuilder : System.Reflection.PortableExecutable.Machine * int * int * uint64 * byte * byte * uint16 * uint16 * uint16 * uint16 * uint16 * uint16 * System.Reflection.PortableExecutable.Subsystem * System.Reflection.PortableExecutable.DllCharacteristics * System.Reflection.PortableExecutable.Characteristics * uint64 * uint64 * uint64 * uint64 -> System.Reflection.PortableExecutable.PEHeaderBuilder
Public Sub New (Optional machine As Machine = System.Reflection.PortableExecutable.Machine.Unknown, Optional sectionAlignment As Integer = 8192, Optional fileAlignment As Integer = 512, Optional imageBase As ULong = 4194304, Optional majorLinkerVersion As Byte = 48, Optional minorLinkerVersion As Byte = 0, Optional majorOperatingSystemVersion As UShort = 4, Optional minorOperatingSystemVersion As UShort = 0, Optional majorImageVersion As UShort = 0, Optional minorImageVersion As UShort = 0, Optional majorSubsystemVersion As UShort = 4, Optional minorSubsystemVersion As UShort = 0, Optional subsystem As Subsystem = System.Reflection.PortableExecutable.Subsystem.WindowsCui, Optional dllCharacteristics As DllCharacteristics = System.Reflection.PortableExecutable.DllCharacteristics.DynamicBase | System.Reflection.PortableExecutable.DllCharacteristics.NoSeh | System.Reflection.PortableExecutable.DllCharacteristics.NxCompatible | System.Reflection.PortableExecutable.DllCharacteristics.TerminalServerAware, Optional imageCharacteristics As Characteristics = System.Reflection.PortableExecutable.Characteristics.Dll, Optional sizeOfStackReserve As ULong = 1048576, Optional sizeOfStackCommit As ULong = 4096, Optional sizeOfHeapReserve As ULong = 1048576, Optional sizeOfHeapCommit As ULong = 4096)

Parameter

machine
Machine

Die CPU-Architektur des Zielcomputers.

sectionAlignment
Int32

Die Ausrichtung (in Bytes) von Abschnitten beim Laden in den Arbeitsspeicher. Er muss größer oder gleich fileAlignmentsein. Der Standard für die Architektur ist die Seitengröße.

fileAlignment
Int32

Der Ausrichtungsfaktor (in Byte), der verwendet wird, um die Rohdaten von Abschnitten in der Imagedatei auszurichten. Der Wert sollte eine Potenz von 2 zwischen 512 und 64 KB (einschließlich) sein. Der Standardwert ist 512. Wenn die sectionAlignment Größe der Architektur kleiner als die Seitengröße der Architektur ist, muss sie fileAlignment übereinstimmen sectionAlignment.

imageBase
UInt64

Die bevorzugte Adresse des ersten Byte des Bilds, wenn es in den Arbeitsspeicher geladen wird; muss ein Vielfaches von 64K sein.

majorLinkerVersion
Byte

Die Hauptversionsnummer des Linker.

minorLinkerVersion
Byte

Die Nebenversionsnummer des Linker.

majorOperatingSystemVersion
UInt16

Die Hauptversionsnummer des erforderlichen Betriebssystems.

minorOperatingSystemVersion
UInt16

Die Nebenversionsnummer des erforderlichen Betriebssystems.

majorImageVersion
UInt16

Die Hauptversionsnummer des Images.

minorImageVersion
UInt16

Die Nebenversionsnummer des Images.

majorSubsystemVersion
UInt16

Die Hauptversionsnummer des Subsystems.

minorSubsystemVersion
UInt16

Die Nebenversionsnummer des Subsystems.

subsystem
Subsystem

Das Subsystem, das zum Ausführen des Images erforderlich ist.

dllCharacteristics
DllCharacteristics

Ein Objekt, das die Merkmale der Dynamischen Linkbibliothek beschreibt.

imageCharacteristics
Characteristics

Ein Objekt, das die Merkmale des Bilds beschreibt.

sizeOfStackReserve
UInt64

Die Größe des Stapels, der reserviert werden soll. Nur sizeOfStackCommit zugesichert; der Rest wird jeweils eine Seite zur Verfügung gestellt, bis die Reservegröße erreicht ist.

sizeOfStackCommit
UInt64

Dier Größe des Stapels, für den ein Commit ausgeführt wird.

sizeOfHeapReserve
UInt64

Die Größe des Speicherplatzes für den lokalen Heap, der reserviert werden soll. Nur sizeOfHeapCommit zugesichert; der Rest wird jeweils eine Seite zur Verfügung gestellt, bis die Reservegröße erreicht ist.

sizeOfHeapCommit
UInt64

Die Größe des Speicherplatzes für den lokalen Heap, für den ein Commit ausgeführt werden soll.

Ausnahmen

fileAlignment ist keine Leistung von 2 zwischen 512 und 64K. -oder-

sectionAlignment nicht Potenz von 2.

-oder-

sectionAlignment ist kleiner als fileAlignment.

Gilt für: