PEHeaderBuilder Konstruktor
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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í je velikost stránky pro architekturu.
- fileAlignment
- Int32
Faktor zarovnání (v bajtech), který se používá k zarovnání nezpracovaných dat oddílů v souboru obrázku. Hodnota by měla být mocnina 2 mezi 512 a 64 tisíci včetně. Výchozí hodnota je 512. Pokud je hodnota sectionAlignment
menší než velikost stránky architektury, musí se shodovat sectionAlignment
fileAlignment
.
- imageBase
- UInt64
Upřednostňovaná adresa prvního bajtu obrázku při načtení do paměti; musí být násobkem 64 tisíc.
- 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 image.
- majorSubsystemVersion
- UInt16
Číslo hlavní 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 odkazů.
- imageCharacteristics
- Characteristics
Objekt popisující charakteristiky obrázku.
- sizeOfStackReserve
- UInt64
Velikost zásobníku, který chcete rezervovat. Je potvrzen pouze sizeOfStackCommit
; zbytek je k dispozici po jedné stránce, dokud není dosaženo velikosti rezervy.
- sizeOfStackCommit
- UInt64
Velikost zásobníku, který se má potvrdit.
- sizeOfHeapReserve
- UInt64
Velikost místa místní haldy, kterou chcete rezervovat. Je potvrzen pouze sizeOfHeapCommit
; zbytek je k dispozici po jedné stránce, dokud není dosaženo velikosti rezervy.
- sizeOfHeapCommit
- UInt64
Velikost místa místní haldy k potvrzení.
Výjimky
fileAlignment
není výkon 2 mezi 512 a 64 K.
-nebo-
sectionAlignment
není mocnina 2.
-nebo-
sectionAlignment
je menší než fileAlignment
.