Aracılığıyla paylaş


PEReader Sınıf

Tanım

Taşınabilir Yürütülebilir Biçim (PE) dosyaları için bir okuyucu sağlar.

public ref class PEReader sealed : IDisposable
public sealed class PEReader : IDisposable
type PEReader = class
    interface IDisposable
Public NotInheritable Class PEReader
Implements IDisposable
Devralma
PEReader
Uygulamalar

Açıklamalar

Dikkat

Bu tür güvenilmeyen girişleri işlemek için tasarlanmamıştır. Hatalı biçimlendirilmiş veya kötü amaçlı PE dosyaları, sınır dışı bellek erişimi, kilitlenmeler veya kilitlenmeler gibi beklenmeyen davranışlara neden olabilir. Yalnızca güvenilen PE dosyaları veya görüntüleriyle kullanın PEReader .

Uygulama iş parçacığı açısından güvenlidir. Başka bir ifadeyle, birden çok iş parçacığı okuyucudaki verileri paralel olarak okuyabilir. Okuyucunun atılması iş parçacığı açısından güvenli değildir (bkz Dispose(). ).

Oluşturucular

Name Description
PEReader(Byte*, Int32, Boolean)

Bellekte depolanan pe görüntüsü üzerinde Taşınabilir Yürütülebilir Okuyucu oluşturur. Bayrak, görüntünün belleğe zaten yüklenip yüklenmediğini gösterir.

PEReader(Byte*, Int32)

Bellekte depolanan pe görüntüsü üzerinde Taşınabilir Yürütülebilir Okuyucu oluşturur.

PEReader(ImmutableArray<Byte>)

Bayt dizisinde depolanan pe görüntüsü üzerinde Taşınabilir Yürütülebilir Okuyucu oluşturur.

PEReader(Stream, PEStreamOptions, Int32)

Akışın geçerli konumundan başlayarak verilen boyuttaki pe görüntüsü üzerinde Taşınabilir Yürütülebilir Okuyucu oluşturur.

PEReader(Stream, PEStreamOptions)

Geçerli konumundan başlayıp akışın sonunda biten bir akışta depolanan PE görüntüsü üzerinde Taşınabilir Yürütülebilir Okuyucu oluşturur.

PEReader(Stream)

Akışta depolanan pe görüntüsü üzerinde Taşınabilir Yürütülebilir Okuyucu oluşturur.

Özellikler

Name Description
HasMetadata

PE görüntüsünün CLI meta verileri içerip içermediğini gösteren bir değer alır.

IsEntireImageAvailable

Okuyucunun PE görüntüsünün tamamına erişip erişemediğini gösteren bir değer alır.

IsLoadedImage

PE görüntüsünün işletim sistemi yükleyicisi tarafından belleğe yüklenip yüklenmediğini gösteren bir değer alır.

PEHeaders

PE üst bilgilerini alır.

Yöntemler

Name Description
Dispose()

Okuyucu tarafından ayrılan tüm belleği atılır.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetEntireImage()

PE görüntüsünün tamamını içeren bir PEMemoryBlock nesne alır.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetMetadata()

CLI meta verilerini içeren bir PE bölümü yükler.

GetSectionData(Int32)

Belirtilen göreli sanal adresi içeren PE bölümünü belleğe yükler ve bu adreste başlayan ve içeren bölümün sonunda biten bir bellek bloğu döndürür.

GetSectionData(String)

Belirtilen ada sahip PE bölümünü belleğe yükler ve bölüme yayılan bir bellek bloğu döndürür.

GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ReadCodeViewDebugDirectoryData(DebugDirectoryEntry)

Belirtilen Debug Directory girdisinin işaret ettiği verileri okur ve CodeView olarak yorumlar.

ReadDebugDirectory()

Tüm Hata Ayıklama Dizini tablo girdilerini okur.

ReadEmbeddedPortablePdbDebugDirectoryData(DebugDirectoryEntry)

Belirtilen Hata Ayıklama Dizini girdisinin işaret ettiği verileri okur ve bunu Katıştırılmış Taşınabilir PDB blobu olarak yorumlar.

ReadPdbChecksumDebugDirectoryData(DebugDirectoryEntry)

Belirtilen Hata Ayıklama Dizini girdisinin işaret ettiği verileri okur ve bir PDB Sağlama Toplamı girdisi olarak yorumlar.

ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)
TryOpenAssociatedPortablePdb(String, Func<String,Stream>, MetadataReaderProvider, String)

Bu PE görüntüsüyle ilişkilendirilmiş taşınabilir bir PDB açar.

Uzantı Metotları

Name Description
GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder)

belirtilen meta veri okuma yapılandırmasına ve kodlama yapılandırmasına sahip bir PEReadermeta veri okuyucu alır.

GetMetadataReader(PEReader, MetadataReaderOptions)

bir 'den belirtilen meta veri okuma yapılandırmasına sahip bir PEReadermeta veri okuyucu alır.

GetMetadataReader(PEReader)

MetadataReader bir 'den alırPEReader.

GetMethodBody(PEReader, Int32)

Belirtilen Göreli Sanal Adrese (RVA) sahip bir yöntemin gövde bloğunu döndürür.

Şunlara uygulanır