PEReader Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia czytnik plików w formacie przenośnym wykonywalnym (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
Caution
Ten typ nie jest przeznaczony do obsługi niezaufanych danych wejściowych. Niepoprawnie sformułowane lub złośliwe pliki PE mogą powodować nieoczekiwane zachowanie, w tym dostęp do pamięci wykraczający poza dopuszczalne granice, zawieszenia lub awarie. Używaj PEReader tylko z zaufanymi plikami PE lub obrazami.
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
| Nazwa | Opis |
|---|---|
| PEReader(Byte*, Int32) |
Tworzy przenośny czytnik plików wykonywalnych za pośrednictwem obrazu PE przechowywanego w pamięci. |
| PEReader(ImmutableArray<Byte>) |
Tworzy przenośny czytnik plików wykonywalnych za pośrednictwem obrazu PE przechowywanego w tablicy bajtów. |
| PEReader(Stream, PEStreamOptions, Int32) |
Tworzy przenośny czytnik plików wykonywalnych na obraz PE o danym rozmiarze rozpoczynającym się od bieżącej pozycji strumienia. |
| PEReader(Stream, PEStreamOptions) |
Tworzy przenośny czytnik plików wykonywalnych za pośrednictwem obrazu PE przechowywanego w strumieniu rozpoczynającym się od bieżącej pozycji i kończącym się na końcu strumienia. |
| PEReader(Stream) |
Tworzy przenośny czytnik plików wykonywalnych za pośrednictwem obrazu PE przechowywanego w strumieniu. |
Właściwości
| Nazwa | Opis |
|---|---|
| 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. |
| PEHeaders |
Pobiera nagłówki PE. |
Metody
| Nazwa | Opis |
|---|---|
| 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ę. |
| GetType() |
Pobiera Type bieżącego wystąpienia. (Odziedziczone po Object) |
| MemberwiseClone() |
Tworzy płytkią kopię bieżącego Object. (Odziedziczone po Object) |
| ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
Metody rozszerzania
| Nazwa | Opis |
|---|---|
| GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder) |
Pobiera czytnik metadanych z określoną konfiguracją odczytu metadanych i konfiguracją kodowania z klasy PEReader. |
| GetMetadataReader(PEReader, MetadataReaderOptions) |
Pobiera czytnik metadanych z określoną konfiguracją odczytu metadanych z klasy PEReader. |
| GetMetadataReader(PEReader) |
Pobiera element MetadataReader z obiektu PEReader. |
| GetMethodBody(PEReader, Int32) |
Zwraca blok treści metody o określonym względnym adresie wirtualnym (RVA). |