PEReader.TryOpenAssociatedPortablePdb Metoda

Definice

Otevře soubor Portable PDB přidružený k tomuto obrázku PE.

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

Parametry

peImagePath
String

Cesta k bitové kopii pe. Cesta se používá k vyhledání souboru PDB umístěného v adresáři obsahujícím soubor PE.

pdbFileStreamProvider
Func<String,Stream>

Pokud je zadaný, volá se pro otevření Stream cesty k danému souboru. Očekává se, že poskytovatel vrátí čitelný a vyhledatelný Streamsoubor nebo null pokud cílový soubor neexistuje nebo by se měl z nějakého důvodu ignorovat. Zprostředkovatel by měl vyvolat IOException , pokud se mu nepodaří soubor otevřít kvůli neočekávané V/V chybě.

pdbReaderProvider
MetadataReaderProvider

V případě úspěchu se ke čtení přenosného MetadataReaderProvider souboru PDB použije nová instance souboru.

pdbPath
String

Pokud je soubor úspěšný a soubor PDB se najde v souboru, cesta k souboru nebo null pokud je soubor PDB vložen do samotné bitové kopie PE.

Návraty

truepokud je k obrazu PE přidružena PDB a pdB byl úspěšně otevřen; v opačném případě . false

Výjimky

peImagePath nebo pdbFileStreamProvider je null.

Datový proud vrácený z pdbFileStreamProvider nepodporuje operace čtení a hledání.

Nebyl nalezen žádný odpovídající soubor PDB kvůli chybě: Obrázek PE nebo PDB je neplatný.

Kvůli chybě nebyl nalezen žádný odpovídající soubor PDB: Při čtení obrázku PE nebo PDB došlo k chybě vstupně-výstupních operací.

Poznámky

Tato metoda implementuje jednoduché vyhledávání souborů PDB na základě obsahu ladicího adresáře image pe. Sofistikovanější nástroj může vyžadovat další vyhledávání na vyhledávacích cestách nebo na serveru symbolů.

Metoda hledá PDB v následujícím pořadí:

  1. Zkontroluje odpovídající soubor PDB s názvem, který se nachází v položce CodeView v adresáři obsahujícím soubor PE (adresář ).peImagePath
  2. Vyhledá soubor PDB vložený do samotné bitové kopie pe.

Vrátí se první soubor PDB, který odpovídá informacím zadaným v adresáři ladění.

Platí pro