Udostępnij za pośrednictwem


PEReader Klasa

Definicja

Udostępnia czytnik plików przenośnego formatu wykonywalnego (PE).

public ref class PEReader sealed : IDisposable
public sealed class PEReader : IDisposable
type PEReader = class
    interface IDisposable
Public NotInheritable Class PEReader
Implements IDisposable
Dziedziczenie
PEReader
Implementuje

Uwagi

Implementacja jest bezpieczna wątkowo. Oznacza to, że wiele wątków może odczytywać dane z czytnika równolegle. Usuwanie czytnika nie jest bezpieczne wątkowo (zobacz Dispose()).

Konstruktory

PEReader(Byte*, Int32)

Tworzy przenośny czytnik wykonywalny za pośrednictwem obrazu PE przechowywanego w pamięci.

PEReader(Byte*, Int32, Boolean)

Tworzy przenośny czytnik wykonywalny za pośrednictwem obrazu PE przechowywanego w pamięci. Flaga wskazuje, czy obraz został już załadowany do pamięci.

PEReader(ImmutableArray<Byte>)

Tworzy przenośny czytnik wykonywalny na obrazIE PE przechowywanym w tablicy bajtów.

PEReader(Stream)

Tworzy przenośny czytnik wykonywalny na obrazIE PE przechowywanym w strumieniu.

PEReader(Stream, PEStreamOptions)

Tworzy przenośny czytnik wykonywalny na obrazIE PE przechowywanym w strumieniu rozpoczynającym się od bieżącej pozycji i kończącym się na końcu strumienia.

PEReader(Stream, PEStreamOptions, Int32)

Tworzy przenośny czytnik wykonywalny na obraz PE o danym rozmiarze rozpoczynającym się od bieżącej pozycji strumienia.

Właściwości

HasMetadata

Pobiera wartość wskazującą, czy obraz PE zawiera metadane interfejsu wiersza polecenia.

IsEntireImageAvailable

Pobiera wartość wskazującą, czy czytelnik może uzyskać dostęp do całego obrazu PE.

IsLoadedImage

Pobiera wartość wskazującą, czy obraz PE został załadowany do pamięci przez moduł ładujący systemu operacyjnego.

PEHeaders

Pobiera nagłówki PE.

Metody

Dispose()

Usuwa całą pamięć przydzieloną przez czytnik.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetEntireImage()

PEMemoryBlock Pobiera obiekt zawierający cały obraz PE.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetMetadata()

Ładuje sekcję PE zawierającą metadane interfejsu wiersza polecenia.

GetSectionData(Int32)

Ładuje sekcję PE zawierającą określony względny adres wirtualny do pamięci i zwraca blok pamięci, który rozpoczyna się od tego adresu i kończy się na końcu zawierającej sekcję.

GetSectionData(String)

Ładuje sekcję PE o określonej nazwie do pamięci i zwraca blok pamięci obejmujący sekcję.

GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ReadCodeViewDebugDirectoryData(DebugDirectoryEntry)

Odczytuje dane wskazywane przez określony wpis katalogu debugowania i interpretuje je jako CodeView.

ReadDebugDirectory()

Odczytuje wszystkie wpisy tabeli Debug Directory.

ReadEmbeddedPortablePdbDebugDirectoryData(DebugDirectoryEntry)

Odczytuje dane wskazywane przez określony wpis katalogu debugowania i interpretuje je jako osadzony przenośny obiekt blob PDB.

ReadPdbChecksumDebugDirectoryData(DebugDirectoryEntry)

Odczytuje dane wskazywane przez określony wpis katalogu debugowania i interpretuje je jako wpis sumy kontrolnej PDB.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
TryOpenAssociatedPortablePdb(String, Func<String,Stream>, MetadataReaderProvider, String)

Otwiera przenośny plik PDB skojarzony z tym obrazem PE.

Metody rozszerzania

GetMetadataReader(PEReader)

Pobiera element MetadataReader z elementu PEReader.

GetMetadataReader(PEReader, MetadataReaderOptions)

Pobiera czytnik metadanych z określoną konfiguracją odczytu metadanych z klasy PEReader.

GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder)

Pobiera czytnik metadanych z określoną konfiguracją odczytu metadanych i konfiguracją kodowania z klasy PEReader.

GetMethodBody(PEReader, Int32)

Zwraca blok treści metody o określonym względnym adresie wirtualnym (RVA).

Dotyczy