PEReader Classe

Definição

Fornece um leitor para arquivos no formato PE (Executável Portátil).Provides a reader for Portable Executable format (PE) files.

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

Comentários

A implementação é thread-safe.The implementation is thread-safe. Ou seja, vários threads podem ler dados do leitor em paralelo.That is, multiple threads can read data from the reader in parallel. A alienação do leitor não é thread-safe (consulte Dispose()).Disposal of the reader is not thread-safe (see Dispose()).

Construtores

PEReader(Byte*, Int32)

Cria um leitor Executável Portátil em uma imagem PE armazenada na memória.Creates a Portable Executable reader over a PE image stored in memory.

PEReader(Byte*, Int32, Boolean)

Cria um leitor Executável Portátil em uma imagem PE armazenada na memória.Creates a Portable Executable reader over a PE image stored in memory. Um sinalizador indica se a imagem já foi carregada na memória.A flag indicates whether the image has already been loaded into memory.

PEReader(ImmutableArray<Byte>)

Cria um leitor Executável Portátil em uma imagem PE armazenada em uma matriz de bytes.Creates a Portable Executable reader over a PE image stored in a byte array.

PEReader(Stream)

Cria um leitor Executável Portátil em uma imagem PE armazenada em um fluxo.Creates a Portable Executable reader over a PE image stored in a stream.

PEReader(Stream, PEStreamOptions)

Cria um leitor de Executável Portátil em uma imagem PE armazenada em um fluxo, começando em sua posição atual e terminando no final do fluxo.Creates a Portable Executable reader over a PE image stored in a stream beginning at its current position and ending at the end of the stream.

PEReader(Stream, PEStreamOptions, Int32)

Cria um leitor de Executável Portátil em uma imagem PE do tamanho fornecido, começando na posição atual do fluxo.Creates a Portable Executable reader over a PE image of the given size beginning at the stream's current position.

Propriedades

HasMetadata

Obtém um valor que indica se a imagem PE contém metadados da CLI.Gets a value that indicates if the PE image contains CLI metadata.

IsEntireImageAvailable

Obtém um valor que indica se o leitor pode acessar toda a imagem PE.Gets a value that indicates if the reader can access the entire PE image.

IsLoadedImage

Obtém um valor que indica se a imagem de PE subjacente foi carregada na memória pelo carregador do sistema operacional.Gets a value that indicates if the PE image has been loaded into memory by the OS loader.

PEHeaders

Obtém os cabeçalhos PE.Gets the PE headers.

Métodos

Dispose()

Descarta toda a memória alocada pelo leitor.Disposes all memory allocated by the reader.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
GetEntireImage()

Obtém um objeto PEMemoryBlock que contém toda a imagem PE.Gets a PEMemoryBlock object containing the entire PE image.

GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetMetadata()

Carrega uma seção de PE que contém metadados da CLI.Loads a PE section that contains CLI metadata.

GetSectionData(Int32)

Carrega a seção PE que contém o endereço virtual relativo especificado na memória e retorna um bloco de memória que começa nesse endereço e termina no final da seção que a contém.Loads the PE section that contains the specified relative virtual address into memory and returns a memory block that starts at that address and ends at the end of the containing section.

GetSectionData(String)

Carrega a seção PE com o nome especificado na memória e retorna um bloco de memória que abrange a seção.Loads the PE section with the specified name into memory and returns a memory block that spans the section.

GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
ReadCodeViewDebugDirectoryData(DebugDirectoryEntry)

Lê os dados apontados pela entrada do diretório de depuração especificado e os interpreta como CodeView.Reads the data pointed to by the specified Debug Directory entry and interprets it as CodeView.

ReadDebugDirectory()

Lê todas as entradas de tabela do diretório de depuração.Reads all Debug Directory table entries.

ReadEmbeddedPortablePdbDebugDirectoryData(DebugDirectoryEntry)

Lê os dados apontados pela entrada do diretório de depuração especificado e os interpreta como um blob de PDB Portátil Inserido.Reads the data pointed to by the specified Debug Directory entry and interprets it as an Embedded Portable PDB blob.

ReadPdbChecksumDebugDirectoryData(DebugDirectoryEntry)

Lê os dados apontados pela entrada do diretório de depuração especificado e os interpreta como uma entrada de soma de verificação de PDB.Reads the data pointed to by the specified Debug Directory entry and interprets it as a PDB Checksum entry.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)
TryOpenAssociatedPortablePdb(String, Func<String,Stream>, MetadataReaderProvider, String)

Abre um PDB portátil associado a esta imagem PE.Opens a Portable PDB associated with this PE image.

Métodos de Extensão

GetMetadataReader(PEReader)

Obtém um MetadataReader de um PEReader.Gets a MetadataReader from a PEReader.

GetMetadataReader(PEReader, MetadataReaderOptions)

Obtém um leitor de metadados com a configuração de leitura de metadados especificada de um PEReader.Gets a metadata reader with the specified metadata reading configuration from a PEReader.

GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder)

Obtém um leitor de metadados com a configuração de leitura de metadados especificada e a configuração de codifica de um PEReader.Gets a metadata reader with the specified metadata reading configuration and encoding configuration from a PEReader.

GetMethodBody(PEReader, Int32)

Retorna um bloco de corpo de um método com o RVA (endereço virtual relativo) especificado;Returns a body block of a method with the specified Relative Virtual Address (RVA);

Aplica-se a