PEHeaderBuilder Конструктор

Определение

Инициализирует новый экземпляр класса PEHeader.

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)

Параметры

machine
Machine

Архитектура ЦП целевого компьютера.

sectionAlignment
Int32

Выравнивание разделов (в байтах) при загрузке в память. Оно должно быть больше или равно fileAlignment. Значением по умолчанию является размер страницы для архитектуры.

fileAlignment
Int32

Коэффициент выравнивания (в байтах), используемый для выравнивания необработанных данных разделов в файле образа. Значение должно иметь значение от 2 от 512 до 64K включительно. Значение по умолчанию — 512. Если размер sectionAlignment страницы архитектуры меньше, то fileAlignment должен соответствовать sectionAlignment.

imageBase
UInt64

Предпочтительный адрес первого байта изображения при загрузке в память; должен иметь значение 64K.

majorLinkerVersion
Byte

Основной номер версии компоновщика.

minorLinkerVersion
Byte

Дополнительный номер версии компоновщика.

majorOperatingSystemVersion
UInt16

Основной номер версии требуемой операционной системы.

minorOperatingSystemVersion
UInt16

Дополнительный номер версии требуемой операционной системы.

majorImageVersion
UInt16

Основной номер версии образа.

minorImageVersion
UInt16

Дополнительный номер версии образа.

majorSubsystemVersion
UInt16

Основной номер версии подсистемы.

minorSubsystemVersion
UInt16

Дополнительный номер версии подсистемы.

subsystem
Subsystem

Подсистема, необходимая для запуска образа.

dllCharacteristics
DllCharacteristics

Объект, описывающий характеристики библиотеки динамической компоновки.

imageCharacteristics
Characteristics

Объект, описывающий характеристики изображения.

sizeOfStackReserve
UInt64

Размер резервируемого стека. Фиксируется только sizeOfStackCommit остальные данные. Остальная часть становится доступной по одной странице за раз, пока не будет достигнут размер резерва.

sizeOfStackCommit
UInt64

Размер фиксируемого стека.

sizeOfHeapReserve
UInt64

Размер резервируемого пространства в локальной куче. Фиксируется только sizeOfHeapCommit остальные данные. Остальная часть становится доступной по одной странице за раз, пока не будет достигнут размер резерва.

sizeOfHeapCommit
UInt64

Размер фиксируемого пространства в локальной куче.

Исключения

fileAlignment не имеет мощности от 2 от 512 до 64K. –или–

sectionAlignment не сила 2.

–или–

sectionAlignment меньше fileAlignment.

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