Bagikan melalui


PEHeader Kelas

Definisi

Mewakili header file Portable Executable (PE).

public ref class PEHeader sealed
public sealed class PEHeader
type PEHeader = class
Public NotInheritable Class PEHeader
Warisan
PEHeader

Contoh

Contoh ini memperlihatkan cara membaca informasi dari header PE:

// Open the Portable Executable (PE) file
using var fs = new FileStream(@"Example.dll", FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
using var peReader = new PEReader(fs);

// Display PE header information
if (peReader.PEHeaders.PEHeader is PEHeader header)
{
    Console.WriteLine($"Image size, bytes:   {header.SizeOfImage}");
    Console.WriteLine($"Image base:          0x{header.ImageBase:X}");
    Console.WriteLine($"File alignment:      0x{header.FileAlignment:X}");
    Console.WriteLine($"Section alignment:   0x{header.SectionAlignment:X}");
    Console.WriteLine($"Subsystem:           {header.Subsystem}");
    Console.WriteLine($"Dll characteristics: {header.DllCharacteristics}");
    Console.WriteLine($"Linker version:      {header.MajorLinkerVersion}.{header.MinorLinkerVersion}");
    Console.WriteLine($"OS version:          {header.MajorOperatingSystemVersion}.{header.MinorOperatingSystemVersion}");
}

Keterangan

Format header file PE ditentukan oleh spesifikasi PE. Kelas ini digunakan oleh PEHeader properti .

Properti

AddressOfEntryPoint

Mendapatkan alamat titik entri relatif terhadap basis gambar ketika file PE dimuat ke dalam memori.

BaseOfCode

Mendapatkan alamat bagian awal kode yang relatif terhadap basis gambar saat gambar dimuat ke dalam memori.

BaseOfData

Mendapatkan alamat bagian awal data yang relatif terhadap basis gambar saat gambar dimuat ke dalam memori.

BaseRelocationTableDirectory

Mendapatkan entri Tabel Relokasi Dasar.

BoundImportTableDirectory

Mendapatkan entri Tabel Impor Terikat.

CertificateTableDirectory

Mendapatkan entri Tabel Sertifikat, yang menunjuk ke tabel sertifikat atribut.

CheckSum

Mendapatkan checksum file gambar.

CopyrightTableDirectory

Mendapatkan entri Tabel Hak Cipta.

CorHeaderTableDirectory

Mendapatkan entri Tabel Header CLI.

DebugTableDirectory

Mendapatkan entri Tabel Debug.

DelayImportTableDirectory

Mendapatkan entri Tabel Impor Delay-Load.

DllCharacteristics

Mendapatkan karakteristik pustaka tautan dinamis.

ExceptionTableDirectory

Mendapatkan entri Tabel Pengecualian.

ExportTableDirectory

Mendapatkan entri Ekspor Tabel.

FileAlignment

Mendapatkan faktor perataan (dalam byte) yang digunakan untuk menyelaraskan data mentah bagian dalam file gambar.

GlobalPointerTableDirectory

Mendapatkan entri Tabel Penunjuk Global.

ImageBase

Mendapatkan alamat pilihan dari byte pertama gambar saat dimuat ke dalam memori.

ImportAddressTableDirectory

Mendapatkan entri Tabel Alamat Impor.

ImportTableDirectory

Mendapatkan entri Impor Tabel.

LoadConfigTableDirectory

Mendapatkan entri Tabel Konfigurasi Beban.

Magic

Mendapatkan nilai yang mengidentifikasi format file gambar.

MajorImageVersion

Mendapatkan nomor versi utama gambar.

MajorLinkerVersion

Mendapatkan nomor versi utama linker.

MajorOperatingSystemVersion

Mendapatkan nomor versi utama dari sistem operasi yang diperlukan.

MajorSubsystemVersion

Mendapatkan nomor versi utama subsistem.

MinorImageVersion

Mendapatkan nomor versi minor gambar.

MinorLinkerVersion

Mendapatkan nomor versi minor linker.

MinorOperatingSystemVersion

Mendapatkan nomor versi minor dari sistem operasi yang diperlukan.

MinorSubsystemVersion

Mendapatkan nomor versi minor subsistem.

NumberOfRvaAndSizes

Mendapatkan jumlah entri direktori data di sisa PEHeader. Masing-masing menjelaskan lokasi dan ukuran.

ResourceTableDirectory

Mendapatkan entri Tabel Sumber Daya.

SectionAlignment

Mendapatkan perataan (dalam byte) bagian saat dimuat ke dalam memori.

SizeOfCode

Mendapatkan ukuran bagian kode (teks), atau jumlah semua bagian kode jika ada beberapa bagian.

SizeOfHeaders

Mendapatkan ukuran gabungan stub MS DOS, header PE, dan header bagian yang dibulatkan ke kelipatan FileAlignment.

SizeOfHeapCommit

Mendapatkan ukuran ruang timbunan lokal untuk dilakukan.

SizeOfHeapReserve

Mendapatkan ukuran ruang timbunan lokal untuk dicadangkan. Hanya SizeOfHeapCommit diterapkan; sisanya tersedia satu halaman pada satu waktu sampai ukuran cadangan tercapai.

SizeOfImage

Mendapatkan ukuran (dalam byte) gambar, termasuk semua header, karena gambar dimuat dalam memori.

SizeOfInitializedData

Mendapatkan ukuran bagian data yang diinisialisasi, atau jumlah semua bagian tersebut jika ada beberapa bagian data.

SizeOfStackCommit

Mendapatkan ukuran tumpukan yang akan dilakukan.

SizeOfStackReserve

Mendapatkan ukuran tumpukan untuk dipesan. Hanya SizeOfStackCommit diterapkan; sisanya tersedia satu halaman pada satu waktu sampai ukuran cadangan tercapai.

SizeOfUninitializedData

Mendapatkan ukuran bagian data yang tidak diinisialisasi (BSS), atau jumlah semua bagian tersebut jika ada beberapa bagian BSS.

Subsystem

Mendapatkan nama subsistem yang diperlukan untuk menjalankan gambar ini.

ThreadLocalStorageTableDirectory

Mendapatkan entri Tabel Penyimpanan Thread-Local.

Metode

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk