PEReader Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan pembaca untuk file format Portable Executable (PE).
public ref class PEReader sealed : IDisposable
public sealed class PEReader : IDisposable
type PEReader = class
interface IDisposable
Public NotInheritable Class PEReader
Implements IDisposable
- Warisan
-
PEReader
- Penerapan
Keterangan
Perhatian
Jenis ini tidak dirancang untuk menangani input yang tidak tepercaya. File PE yang salah bentuk atau berbahaya dapat menyebabkan perilaku tak terduga, termasuk akses memori di luar batas, crash, atau macet. Hanya gunakan PEReader dengan file atau gambar PE tepercaya.
Implementasinya adalah thread-safe. Artinya, beberapa utas dapat membaca data dari pembaca secara paralel. Pembuangan pembaca tidak aman utas (lihat Dispose()).
Konstruktor
| Nama | Deskripsi |
|---|---|
| PEReader(Byte*, Int32, Boolean) |
Membuat pembaca Portable Executable melalui gambar PE yang disimpan dalam memori. Bendera menunjukkan apakah gambar telah dimuat ke dalam memori. |
| PEReader(Byte*, Int32) |
Membuat pembaca Portable Executable melalui gambar PE yang disimpan dalam memori. |
| PEReader(ImmutableArray<Byte>) |
Membuat pembaca Portable Executable melalui gambar PE yang disimpan dalam array byte. |
| PEReader(Stream, PEStreamOptions, Int32) |
Membuat pembaca Portable Executable melalui gambar PE dari ukuran tertentu yang dimulai pada posisi streaming saat ini. |
| PEReader(Stream, PEStreamOptions) |
Membuat pembaca Portable Executable melalui gambar PE yang disimpan dalam aliran yang dimulai pada posisinya saat ini dan berakhir di akhir aliran. |
| PEReader(Stream) |
Membuat pembaca Portable Executable melalui gambar PE yang disimpan dalam aliran. |
Properti
| Nama | Deskripsi |
|---|---|
| HasMetadata |
Mendapatkan nilai yang menunjukkan apakah gambar PE berisi metadata CLI. |
| IsEntireImageAvailable |
Mendapatkan nilai yang menunjukkan apakah pembaca dapat mengakses seluruh gambar PE. |
| IsLoadedImage |
Mendapatkan nilai yang menunjukkan apakah gambar PE telah dimuat ke dalam memori oleh pemuat OS. |
| PEHeaders |
Mendapatkan header PE. |
Metode
| Nama | Deskripsi |
|---|---|
| Dispose() |
Membuang semua memori yang dialokasikan oleh pembaca. |
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetEntireImage() |
Mendapatkan objek yang PEMemoryBlock berisi seluruh gambar PE. |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetMetadata() |
Memuat bagian PE yang berisi metadata CLI. |
| GetSectionData(Int32) |
Memuat bagian PE yang berisi alamat virtual relatif yang ditentukan ke dalam memori dan mengembalikan blok memori yang dimulai di alamat tersebut dan berakhir di akhir bagian yang berisi. |
| GetSectionData(String) |
Memuat bagian PE dengan nama yang ditentukan ke dalam memori dan mengembalikan blok memori yang mencakup bagian . |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| ReadCodeViewDebugDirectoryData(DebugDirectoryEntry) |
Membaca data yang diarahkan oleh entri Direktori Debug yang ditentukan dan menafsirkannya sebagai CodeView. |
| ReadDebugDirectory() |
Membaca semua entri tabel Direktori Debug. |
| ReadEmbeddedPortablePdbDebugDirectoryData(DebugDirectoryEntry) |
Membaca data yang diarahkan oleh entri Direktori Debug yang ditentukan dan menginterpretasikannya sebagai blob PDB Portabel Tertanam. |
| ReadPdbChecksumDebugDirectoryData(DebugDirectoryEntry) |
Membaca data yang diarahkan oleh entri Direktori Debug yang ditentukan dan menafsirkannya sebagai entri Checksum PDB. |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
| TryOpenAssociatedPortablePdb(String, Func<String,Stream>, MetadataReaderProvider, String) |
Membuka PDB Portabel yang terkait dengan gambar PE ini. |
Metode Ekstensi
| Nama | Deskripsi |
|---|---|
| GetMetadataReader(PEReader, MetadataReaderOptions, MetadataStringDecoder) |
Mendapatkan pembaca metadata dengan konfigurasi pembacaan metadata yang ditentukan dan konfigurasi pengodean dari PEReader. |
| GetMetadataReader(PEReader, MetadataReaderOptions) |
Mendapatkan pembaca metadata dengan konfigurasi pembacaan metadata yang ditentukan dari PEReader. |
| GetMetadataReader(PEReader) |
MetadataReader Mendapatkan dari PEReader. |
| GetMethodBody(PEReader, Int32) |
Mengembalikan blok isi metode dengan Alamat Virtual Relatif (RVA) yang ditentukan. |