PEReader Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje čtečku pro soubory ve formátu PE (Portable Spustitelný soubor).
public ref class PEReader sealed : IDisposable
public sealed class PEReader : IDisposable
type PEReader = class
interface IDisposable
Public NotInheritable Class PEReader
Implements IDisposable
- Dědičnost
-
PEReader
- Implementuje
Poznámky
Upozornění
Tento typ není navržený tak, aby zpracovával nedůvěryhodný vstup. Poškozené nebo škodlivé soubory PE můžou způsobit neočekávané chování, včetně přístupu k paměti mimo hranice, chybových ukončení nebo zablokování. Používejte PEReader pouze u důvěryhodných souborů nebo imagí PE.
Implementace je bezpečná pro přístup z více vláken. To znamená, že několik vláken může číst data z čtenáře paralelně. Likvidace čtečky není bezpečná pro přístup z více vláken (viz Dispose()).
Konstruktory
| Name | Description |
|---|---|
| PEReader(Byte*, Int32, Boolean) |
Vytvoří čtečku přenosného spustitelného souboru přes bitovou kopii PE uloženou v paměti. Příznak označuje, zda je image již načtena do paměti. |
| PEReader(Byte*, Int32) |
Vytvoří čtečku přenosného spustitelného souboru přes bitovou kopii PE uloženou v paměti. |
| PEReader(ImmutableArray<Byte>) |
Vytvoří čtečku přenosného spustitelného souboru přes bitovou kopii PE uloženou v bajtovém poli. |
| PEReader(Stream, PEStreamOptions, Int32) |
Vytvoří čtečku přenosného spustitelného souboru přes obrázek PE dané velikosti začínající na aktuální pozici datového proudu. |
| PEReader(Stream, PEStreamOptions) |
Vytvoří čtečku přenosného spustitelného souboru přes bitovou kopii PE uloženou v datovém proudu, která začíná na jeho aktuální pozici a končí na konci datového proudu. |
| PEReader(Stream) |
Vytvoří čtečku přenosného spustitelného souboru přes bitovou kopii PE uloženou ve streamu. |
Vlastnosti
| Name | Description |
|---|---|
| HasMetadata |
Získá hodnotu, která označuje, zda obrázek PE obsahuje metadata rozhraní příkazového řádku. |
| IsEntireImageAvailable |
Získá hodnotu, která označuje, zda čtenář má přístup k celému obrázku PE. |
| IsLoadedImage |
Získá hodnotu, která označuje, zda je image PE načtena do paměti zavaděčem operačního systému. |
| PEHeaders |
Získá hlavičky PE. |
Metody
| Name | Description |
|---|---|
| Dispose() |
Odstraní veškerou paměť přidělenou čtenářem. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetEntireImage() |
PEMemoryBlock Získá objekt obsahující celý obrázek PE. |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetMetadata() |
Načte oddíl PE, který obsahuje metadata rozhraní příkazového řádku. |
| GetSectionData(Int32) |
Načte oddíl PE obsahující zadanou relativní virtuální adresu do paměti a vrátí blok paměti, který začíná na této adrese a končí na konci obsahujícího oddílu. |
| GetSectionData(String) |
Načte oddíl PE se zadaným názvem do paměti a vrátí blok paměti, který zahrnuje oddíl. |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ReadCodeViewDebugDirectoryData(DebugDirectoryEntry) |
Přečte data, na která odkazuje zadaná položka ladicího adresáře, a interpretuje je jako CodeView. |
| ReadDebugDirectory() |
Přečte všechny položky tabulky ladicího adresáře. |
| ReadEmbeddedPortablePdbDebugDirectoryData(DebugDirectoryEntry) |
Přečte data, na která odkazuje zadaná položka adresáře ladění, a interpretuje je jako vložený přenosný objekt blob PDB. |
| ReadPdbChecksumDebugDirectoryData(DebugDirectoryEntry) |
Přečte data, na která odkazuje zadaná položka ladicího adresáře, a interpretuje je jako položku kontrolního součtu PDB. |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
| TryOpenAssociatedPortablePdb(String, Func<String,Stream>, MetadataReaderProvider, String) |
Otevře přenosný soubor PDB přidružený k tomuto obrázku PE. |
Metody rozšíření
| Name | Description |
|---|---|
| GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder) |
Získá čtenář metadat se zadanými metadaty čtení konfigurace a kódování konfigurace z .PEReader |
| GetMetadataReader(PEReader, MetadataReaderOptions) |
Získá čtečku metadat se zadanými metadaty čtení konfigurace z objektu PEReader. |
| GetMetadataReader(PEReader) |
Získá od MetadataReaderPEReader. |
| GetMethodBody(PEReader, Int32) |
Vrátí základní blok metody se zadanou relativní virtuální adresou (RVA). |