IMAGE_SECTION_HEADER 構造体 (winnt.h)
イメージ セクションヘッダーの形式を表します。
構文
typedef struct _IMAGE_SECTION_HEADER {
BYTE Name[IMAGE_SIZEOF_SHORT_NAME];
union {
DWORD PhysicalAddress;
DWORD VirtualSize;
} Misc;
DWORD VirtualAddress;
DWORD SizeOfRawData;
DWORD PointerToRawData;
DWORD PointerToRelocations;
DWORD PointerToLinenumbers;
WORD NumberOfRelocations;
WORD NumberOfLinenumbers;
DWORD Characteristics;
} IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER;
メンバー
Name[IMAGE_SIZEOF_SHORT_NAME]
8 バイトの NULL 埋め込み UTF-8 文字列。 文字列の長さがちょうど 8 文字の場合、終端の null 文字はありません。 長い名前の場合、このメンバーにはスラッシュ (/) の後に、文字列テーブルへのオフセットである 10 進数の ASCII 表現が含まれます。 実行可能イメージは文字列テーブルを使用せず、8 文字を超えるセクション名をサポートしていません。
Misc
Misc.PhysicalAddress
ファイル アドレス。
Misc.VirtualSize
メモリに読み込まれた場合のセクションの合計サイズ (バイト単位)。 この値が SizeOfRawData メンバーより大きい場合、セクションはゼロで塗りつぶされます。 このフィールドは実行可能イメージに対してのみ有効であり、オブジェクト ファイルの場合は 0 に設定する必要があります。
VirtualAddress
メモリに読み込まれるときのセクションの最初のバイトのアドレス。イメージ ベースに対する相対アドレス。 オブジェクト ファイルの場合、これは再配置が適用される前の最初のバイトのアドレスです。
SizeOfRawData
ディスク上の初期化されたデータのサイズ (バイト単位)。 この値は、IMAGE_OPTIONAL_HEADER構造体の FileAlignment メンバーの倍数である必要があります。 この値が VirtualSize メンバーより小さい場合、セクションの残りの部分はゼロで塗りつぶされます。 セクションに初期化されていないデータのみが含まれている場合、メンバーは 0 になります。
PointerToRawData
COFF ファイル内の最初のページへのファイル ポインター。 この値は、IMAGE_OPTIONAL_HEADER構造体の FileAlignment メンバーの倍数である必要があります。 セクションに初期化されていないデータのみが含まれている場合は、このメンバーを 0 に設定します。
PointerToRelocations
セクションの再配置エントリの先頭へのファイル ポインター。 再配置がない場合、この値は 0 です。
PointerToLinenumbers
セクションの行番号エントリの先頭へのファイル ポインター。 COFF 行番号がない場合、この値は 0 です。
NumberOfRelocations
セクションの再配置エントリの数。 実行可能イメージの場合、この値は 0 です。
NumberOfLinenumbers
セクションの行番号エントリの数。
Characteristics
画像の特性。 次の値が定義されています。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
Header | winnt.h (Windows.h を含む) |