PEReader.TryOpenAssociatedPortablePdb Yöntem

Tanım

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

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

Parametreler

peImagePath
String

PE görüntüsünün yolu. Yol, PE dosyasını içeren dizinde bulunan PDB dosyasını bulmak için kullanılır.

pdbFileStreamProvider
Func<String,Stream>

Belirtilirse, belirli bir dosya yolu için açmak Stream üzere çağrılır. Sağlayıcının okunabilir ve aranabilir bir döndürmesi beklenir Streamya da null hedef dosya yoksa veya herhangi bir nedenle yoksayılmalıdır. Beklenmeyen bir GÇ hatası nedeniyle dosyayı açamadığında sağlayıcının oluşturması IOException gerekir.

pdbReaderProvider
MetadataReaderProvider

Başarılı olursa, Taşınabilir PDB'yi MetadataReaderProvider okumak için kullanılacak yeni bir örneği.

pdbPath
String

Başarılı olursa ve PDB bir dosyada, dosyanın yolunda veya null PDB PE görüntüsünün kendisine eklenmişse.

Döndürülenler

true PE görüntüsüyle ilişkilendirilmiş bir PDB varsa ve PDB başarıyla açıldıysa; aksi takdirde , false.

Özel durumlar

peImagePath veya pdbFileStreamProvider şeklindedir null.

'den pdbFileStreamProvider döndürülen akış okuma ve arama işlemlerini desteklemez.

Bir hata nedeniyle eşleşen PDB dosyası bulunamadı: PE görüntüsü veya PDB geçersiz.

Bir hata nedeniyle eşleşen PDB dosyası bulunamadı: PE görüntüsü veya PDB okunurken GÇ hatası oluştu.

Açıklamalar

Bu yöntem, PE görüntüsü Hata Ayıklama Dizini'nin içeriğine bağlı olarak basit bir PDB dosyası araması uygular. Daha gelişmiş bir aracın arama yollarında veya sembol sunucusunda ek arama ile izlemesi gerekebilir.

yöntemi PDB'yi aşağıdaki sırayla arar:

  1. PE dosyasını ( peImagePathdizinini) içeren dizindeki CodeView girdisinde bulunan adın eşleşen PDB dosyasını denetler.
  2. PE görüntüsünün kendisine eklenmiş bir PDB'yi denetler.

Hata Ayıklama Dizininde belirtilen bilgilerle eşleşen ilk PDB döndürülür.

Şunlara uygulanır