Bagikan melalui


PEReader.TryOpenAssociatedPortablePdb Metode

Definisi

Membuka PDB Portabel yang terkait dengan gambar PE ini.

public:
 bool TryOpenAssociatedPortablePdb(System::String ^ peImagePath, Func<System::String ^, System::IO::Stream ^> ^ pdbFileStreamProvider, [Runtime::InteropServices::Out] System::Reflection::Metadata::MetadataReaderProvider ^ % pdbReaderProvider, [Runtime::InteropServices::Out] System::String ^ % pdbPath);
public bool TryOpenAssociatedPortablePdb (string peImagePath, Func<string,System.IO.Stream?> pdbFileStreamProvider, out System.Reflection.Metadata.MetadataReaderProvider? pdbReaderProvider, out string? pdbPath);
public bool TryOpenAssociatedPortablePdb (string peImagePath, Func<string,System.IO.Stream> pdbFileStreamProvider, out System.Reflection.Metadata.MetadataReaderProvider pdbReaderProvider, out string pdbPath);
member this.TryOpenAssociatedPortablePdb : string * Func<string, System.IO.Stream> * MetadataReaderProvider * string -> bool
Public Function TryOpenAssociatedPortablePdb (peImagePath As String, pdbFileStreamProvider As Func(Of String, Stream), ByRef pdbReaderProvider As MetadataReaderProvider, ByRef pdbPath As String) As Boolean

Parameter

peImagePath
String

Jalur ke gambar PE. Jalur digunakan untuk menemukan file PDB yang terletak di direktori yang berisi file PE.

pdbFileStreamProvider
Func<String,Stream>

Jika ditentukan, dipanggil untuk membuka Stream untuk jalur file tertentu. Penyedia diharapkan untuk mengembalikan file yang dapat dibaca dan dapat Streamdicari, atau null jika file target tidak ada atau harus diabaikan karena beberapa alasan. Penyedia harus melempar IOException jika gagal membuka file karena kesalahan IO yang tidak terduga.

pdbReaderProvider
MetadataReaderProvider

Jika berhasil, instans MetadataReaderProvider baru yang akan digunakan untuk membaca PDB Portabel.

pdbPath
String

Jika berhasil dan PDB ditemukan dalam file, jalur ke file, atau null jika PDB disematkan dalam gambar PE itu sendiri.

Mengembalikan

true jika gambar PE memiliki PDB yang terkait dengannya dan PDB telah berhasil dibuka; jika tidak, false.

Pengecualian

peImagePath atau pdbFileStreamProvider adalah null.

Aliran yang dikembalikan dari pdbFileStreamProvider tidak mendukung operasi baca dan cari.

Tidak ditemukan file PDB yang cocok karena kesalahan: Gambar PE atau PDB tidak valid.

Tidak ditemukan file PDB yang cocok karena kesalahan: Terjadi kesalahan IO saat membaca gambar PE atau PDB.

Keterangan

Metode ini mengimplementasikan pencarian file PDB sederhana berdasarkan konten Direktori Debug gambar PE. Alat yang lebih canggih mungkin perlu ditindaklanjuti dengan pencarian tambahan pada jalur pencarian atau server simbol.

Metode ini mencari PDB dalam urutan berikut:

  1. Memeriksa file PDB yang cocok dari nama yang ditemukan di entri CodeView di direktori yang berisi file PE (direktori peImagePath).
  2. Memeriksa PDB yang disematkan dalam gambar PE itu sendiri.

PDB pertama yang cocok dengan informasi yang ditentukan dalam Direktori Debug dikembalikan.

Berlaku untuk