PEHeader Klass

Definition

Representerar pe-filrubriken (Portable Executable).

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

Exempel

Det här exemplet visar hur du läser information från PE-huvudet:

// 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}");
}

Kommentarer

PE-filhuvudformatet definieras av PE-specifikationen. Den här klassen används av egenskapen PEHeader .

Egenskaper

Name Description
AddressOfEntryPoint

Hämtar adressen till startpunkten i förhållande till avbildningsbasen när PE-filen läses in i minnet.

BaseOfCode

Hämtar adressen för avsnittet början av koden i förhållande till avbildningsbasen när avbildningen läses in i minnet.

BaseOfData

Hämtar adressen för avsnittet början av data i förhållande till avbildningsbasen när avbildningen läses in i minnet.

BaseRelocationTableDirectory

Hämtar posten Base Relocations Table (Basflyttartabell).

BoundImportTableDirectory

Hämtar posten Bound Import Table (Bunden importtabell).

CertificateTableDirectory

Hämtar posten Certifikattabell, som pekar på en tabell med attributcertifikat.

CheckSum

Hämtar kontrollsumman för bildfilen.

CopyrightTableDirectory

Hämtar posten Copyright Table (Copyright Table).

CorHeaderTableDirectory

Hämtar posten CLI-rubriktabell.

DebugTableDirectory

Hämtar posten Felsökningstabell.

DelayImportTableDirectory

Hämtar posten Delay-Load Importera tabell.

DllCharacteristics

Hämtar egenskaperna för ett dynamiskt länkbibliotek.

ExceptionTableDirectory

Hämtar posten Undantagstabell.

ExportTableDirectory

Hämtar posten Exportera tabell.

FileAlignment

Hämtar justeringsfaktorn (i byte) som används för att justera rådata för avsnitt i bildfilen.

GlobalPointerTableDirectory

Hämtar posten Global pekartabell.

ImageBase

Hämtar den föredragna adressen för den första byte av avbildningen när den läses in i minnet.

ImportAddressTableDirectory

Hämtar posten Importera adresstabell.

ImportTableDirectory

Hämtar posten Importera tabell.

LoadConfigTableDirectory

Hämtar posten Inläsningskonfigurationstabell.

Magic

Hämtar ett värde som identifierar bildfilens format.

MajorImageVersion

Hämtar huvudversionsnumret för avbildningen.

MajorLinkerVersion

Hämtar linker-huvudversionsnumret.

MajorOperatingSystemVersion

Hämtar huvudversionsnumret för det nödvändiga operativsystemet.

MajorSubsystemVersion

Hämtar huvudversionsnumret för undersystemet.

MinorImageVersion

Hämtar avbildningens delversionsnummer.

MinorLinkerVersion

Hämtar delversionsnumret för länkaren.

MinorOperatingSystemVersion

Hämtar delversionsnumret för det nödvändiga operativsystemet.

MinorSubsystemVersion

Hämtar delversionsnumret för undersystemet.

NumberOfRvaAndSizes

Hämtar antalet datakatalogposter i resten av PEHeader. Var och en beskriver en plats och storlek.

ResourceTableDirectory

Hämtar posten Resurstabell.

SectionAlignment

Hämtar justeringen (i byte) för avsnitt när de läses in i minnet.

SizeOfCode

Hämtar storleken på kodavsnittet (text) eller summan av alla kodavsnitt om det finns flera avsnitt.

SizeOfHeaders

Hämtar den kombinerade storleken på en MS DOS-stub, PE-rubrik och avsnittsrubriker avrundade upp till en multipel av FileAlignment.

SizeOfHeapCommit

Hämtar storleken på det lokala heaputrymmet som ska checkas in.

SizeOfHeapReserve

Hämtar storleken på det lokala heaputrymmet som ska reserveras. Endast SizeOfHeapCommit checkas in. Resten görs tillgängligt en sida i taget tills reservstorleken har nåtts.

SizeOfImage

Hämtar bildens storlek (i byte), inklusive alla rubriker, när bilden läses in i minnet.

SizeOfInitializedData

Hämtar storleken på det initierade dataavsnittet eller summan av alla sådana avsnitt om det finns flera dataavsnitt.

SizeOfStackCommit

Hämtar storleken på stacken som ska checkas in.

SizeOfStackReserve

Hämtar storleken på stacken som ska reserveras. Endast SizeOfStackCommit checkas in. Resten görs tillgängligt en sida i taget tills reservstorleken har nåtts.

SizeOfUninitializedData

Hämtar storleken på det uninitialiserade dataavsnittet (BSS) eller summan av alla sådana avsnitt om det finns flera BSS-avsnitt.

Subsystem

Hämtar namnet på det undersystem som krävs för att köra den här avbildningen.

ThreadLocalStorageTableDirectory

Hämtar posten Thread-Local Storage Table.

Metoder

Name Description
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Gäller för