PEReader Classe

Definição

Fornece um leitor para ficheiros em formato Portátil Executável (PE).

public ref class PEReader sealed : IDisposable
public sealed class PEReader : IDisposable
type PEReader = class
    interface IDisposable
Public NotInheritable Class PEReader
Implements IDisposable
Herança
PEReader
Implementações

Observações

Atenção

Este tipo não foi concebido para lidar com entradas não confiáveis. Ficheiros PE mal formados ou maliciosos podem causar comportamentos inesperados, incluindo acesso à memória fora dos limites, falhas ou bloqueios. Use PEReader apenas com ficheiros ou imagens PE de confiança.

A implementação é segura para threads. Ou seja, múltiplos threads podem ler dados do leitor em paralelo. A eliminação do leitor não é segura para fios (ver Dispose()).

Construtores

Name Description
PEReader(Byte*, Int32)

Cria um leitor Portátil de Executáveis sobre uma imagem PE armazenada em memória.

PEReader(ImmutableArray<Byte>)

Cria um leitor de executáveis portátil sobre uma imagem PE armazenada num array de bytes.

PEReader(Stream, PEStreamOptions, Int32)

Cria um leitor Executável Portátil sobre uma imagem PE do tamanho dado começando na posição atual do fluxo.

PEReader(Stream, PEStreamOptions)

Cria um leitor Portátil de Executáveis sobre uma imagem PE armazenada num fluxo que começa na sua posição atual e termina no final do fluxo.

PEReader(Stream)

Cria um leitor de executáveis portátil sobre uma imagem PE armazenada num fluxo.

Propriedades

Name Description
HasMetadata

Obtém um valor que indica se a imagem PE contém metadados CLI.

IsEntireImageAvailable

Recebe um valor que indica se o leitor consegue aceder à imagem PE completa.

PEHeaders

Recebe os cabeçalhos PE.

Métodos

Name Description
Dispose()

Elimina toda a memória alocada pelo leitor.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetEntireImage()

Obtém um PEMemoryBlock objeto contendo toda a imagem PE.

GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetMetadata()

Carrega uma secção PE que contém metadados da CLI.

GetSectionData(Int32)

Carrega a secção PE que contém o endereço virtual relativo especificado na memória e devolve um bloco de memória que começa nesse endereço e termina no final da secção que contém.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Métodos da Extensão

Name Description
GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder)

Obtém um leitor de metadados com a configuração de leitura de metadados e a configuração de codificação especificadas a partir de um PEReader.

GetMetadataReader(PEReader, MetadataReaderOptions)

Obtém um leitor de metadados com a configuração de leitura de metadados especificada a partir de um PEReader.

GetMetadataReader(PEReader)

Obtém um MetadataReader de um PEReader.

GetMethodBody(PEReader, Int32)

Devolve um bloco de corpo de um método com o Endereço Virtual Relativo (RVA) especificado.

Aplica-se a