PEHeader Clase

Definición

Representa el encabezado de archivo portable ejecutable (PE).

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

Ejemplos

En este ejemplo se muestra cómo leer información del encabezado 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}");
}

Comentarios

El formato de encabezado de archivo PE se define mediante la especificación PE. Esta clase la usa la PEHeader propiedad .

Propiedades

Nombre Description
AddressOfEntryPoint

Obtiene la dirección del punto de entrada relativo a la base de imágenes cuando el archivo PE se carga en la memoria.

BaseOfCode

Obtiene la dirección de la sección de principio de código relativa a la base de imágenes cuando la imagen se carga en la memoria.

BaseOfData

Obtiene la dirección de la sección principio de datos relativa a la base de imágenes cuando la imagen se carga en la memoria.

BaseRelocationTableDirectory

Obtiene la entrada Tabla de reubicaciones base.

BoundImportTableDirectory

Obtiene la entrada Tabla de importación enlazada.

CertificateTableDirectory

Obtiene la entrada Tabla de certificados, que apunta a una tabla de certificados de atributo.

CheckSum

Obtiene la suma de comprobación del archivo de imagen.

CopyrightTableDirectory

Obtiene la entrada Tabla de copyright.

CorHeaderTableDirectory

Obtiene la entrada De tabla de encabezado de la CLI.

DebugTableDirectory

Obtiene la entrada Tabla de depuración.

DelayImportTableDirectory

Obtiene la entrada importar tabla de Delay-Load.

DllCharacteristics

Obtiene las características de una biblioteca de vínculos dinámicos.

ExceptionTableDirectory

Obtiene la entrada Tabla de excepciones.

ExportTableDirectory

Obtiene la entrada Exportar tabla.

FileAlignment

Obtiene el factor de alineación (en bytes) que se usa para alinear los datos sin procesar de las secciones del archivo de imagen.

GlobalPointerTableDirectory

Obtiene la entrada Tabla de puntero global.

ImageBase

Obtiene la dirección preferida del primer byte de la imagen cuando se carga en la memoria.

ImportAddressTableDirectory

Obtiene la entrada Importar tabla de direcciones.

ImportTableDirectory

Obtiene la entrada Importar tabla.

LoadConfigTableDirectory

Obtiene la entrada Tabla de configuración de carga.

Magic

Obtiene un valor que identifica el formato del archivo de imagen.

MajorImageVersion

Obtiene el número de versión principal de la imagen.

MajorLinkerVersion

Obtiene el número de versión principal del enlazador.

MajorOperatingSystemVersion

Obtiene el número de versión principal del sistema operativo necesario.

MajorSubsystemVersion

Obtiene el número de versión principal del subsistema.

MinorImageVersion

Obtiene el número de versión secundaria de la imagen.

MinorLinkerVersion

Obtiene el número de versión secundaria del enlazador.

MinorOperatingSystemVersion

Obtiene el número de versión secundaria del sistema operativo necesario.

MinorSubsystemVersion

Obtiene el número de versión secundaria del subsistema.

NumberOfRvaAndSizes

Obtiene el número de entradas de directorio de datos en el resto de PEHeader. Cada una describe una ubicación y un tamaño.

ResourceTableDirectory

Obtiene la entrada Tabla de recursos.

SectionAlignment

Obtiene la alineación (en bytes) de las secciones cuando se cargan en la memoria.

SizeOfCode

Obtiene el tamaño de la sección de código (texto) o la suma de todas las secciones de código si hay varias secciones.

SizeOfHeaders

Obtiene el tamaño combinado de un código auxiliar de MS DOS, un encabezado PE y encabezados de sección redondeados hasta un múltiplo de FileAlignment.

SizeOfHeapCommit

Obtiene el tamaño del espacio del montón local que se va a confirmar.

SizeOfHeapReserve

Obtiene el tamaño del espacio del montón local que se va a reservar. Solo SizeOfHeapCommit se confirma; el resto se pone a disposición de una página a la vez hasta que se alcanza el tamaño de reserva.

SizeOfImage

Obtiene el tamaño (en bytes) de la imagen, incluidos todos los encabezados, ya que la imagen se carga en memoria.

SizeOfInitializedData

Obtiene el tamaño de la sección de datos inicializados o la suma de todas estas secciones si hay varias secciones de datos.

SizeOfStackCommit

Obtiene el tamaño de la pila que se va a confirmar.

SizeOfStackReserve

Obtiene el tamaño de la pila que se va a reservar. Solo SizeOfStackCommit se confirma; el resto se pone a disposición de una página a la vez hasta que se alcanza el tamaño de reserva.

SizeOfUninitializedData

Obtiene el tamaño de la sección de datos sin inicializar (BSS) o la suma de todas estas secciones si hay varias secciones BSS.

Subsystem

Obtiene el nombre del subsistema necesario para ejecutar esta imagen.

ThreadLocalStorageTableDirectory

Obtiene la entrada Thread-Local Tabla de almacenamiento.

Métodos

Nombre Description
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetHashCode()

Actúa como función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a