PEHeaderBuilder Konstruktor

Definice

Inicializuje novou instanci PEHeader třídy.

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)

Parametry

machine
Machine

Architektura procesoru cílového počítače.

sectionAlignment
Int32

Zarovnání oddílů (v bajtech) při jejich načtení do paměti. Musí být větší než nebo rovno fileAlignment. Výchozí hodnota je velikost stránky pro architekturu.

fileAlignment
Int32

Faktor zarovnání (v bajtech), který slouží k zarovnání nezpracovaných dat oddílů v souboru obrázku. Hodnota by měla být 2 v rozmezí od 512 do 64 K včetně. Výchozí hodnota je 512. sectionAlignment Pokud je menší než velikost stránky architektury, musí se fileAlignment shodovat sectionAlignment.

imageBase
UInt64

Upřednostňovaná adresa prvního bajtu image při načtení do paměti; musí být násobkem 64 kB.

majorLinkerVersion
Byte

Číslo hlavní verze linkeru.

minorLinkerVersion
Byte

Číslo podverze linkeru.

majorOperatingSystemVersion
UInt16

Číslo hlavní verze požadovaného operačního systému.

minorOperatingSystemVersion
UInt16

Číslo podverze požadovaného operačního systému.

majorImageVersion
UInt16

Číslo hlavní verze image.

minorImageVersion
UInt16

Číslo podverze obrázku.

majorSubsystemVersion
UInt16

Hlavní číslo verze subsystému.

minorSubsystemVersion
UInt16

Číslo podverze subsystému.

subsystem
Subsystem

Subsystém potřebný ke spuštění image.

dllCharacteristics
DllCharacteristics

Objekt popisující charakteristiky dynamické knihovny propojení.

imageCharacteristics
Characteristics

Objekt popisující charakteristiky obrázku.

sizeOfStackReserve
UInt64

Velikost zásobníku, který chcete rezervovat. Potvrzeno je pouze sizeOfStackCommit ; zbytek je k dispozici po jedné stránce, dokud nedosáhnete velikosti rezervy.

sizeOfStackCommit
UInt64

Velikost zásobníku, který se má potvrdit.

sizeOfHeapReserve
UInt64

Velikost místního prostoru haldy, která se má rezervovat. Potvrzeno je pouze sizeOfHeapCommit ; zbytek je k dispozici po jedné stránce, dokud nedosáhnete velikosti rezervy.

sizeOfHeapCommit
UInt64

Velikost místa místní haldy, která se má potvrdit.

Výjimky

fileAlignment není mocnina 2 mezi 512 a 64 K. nebo

sectionAlignment výkonu 2.

nebo

sectionAlignment je menší než fileAlignment.

Platí pro