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

ターゲット マシンの CPU アーキテクチャ。

sectionAlignment
Int32

セクションがメモリに読み込まれるときのその配置 (バイト単位)。 fileAlignment以上である必要があります。 既定値は、アーキテクチャのページ サイズです。

fileAlignment
Int32

イメージ ファイル内のセクションの生データを揃えるために使用される配置係数 (バイト単位)。 値は、512 から 64K までの 2 の累乗である必要があります(両端を含む)。 既定値は 512 です。 sectionAlignmentがアーキテクチャのページ サイズより小さい場合、fileAlignmentsectionAlignmentと一致する必要があります。

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のみがコミットされます。残りは、予約サイズに達するまで一度に 1 ページずつ使用できます。

sizeOfStackCommit
UInt64

コミットするスタックのサイズ。

sizeOfHeapReserve
UInt64

予約するローカル ヒープ領域のサイズ。 sizeOfHeapCommitのみがコミットされます。残りは、予約サイズに達するまで一度に 1 ページずつ使用できます。

sizeOfHeapCommit
UInt64

コミットするローカル ヒープ領域のサイズ。

例外

fileAlignment は、512 ~ 64K の間で 2 の電力ではありません。 -又は-

sectionAlignment 2 の累乗ではありません。

-又は-

sectionAlignmentfileAlignment未満です。

適用対象