PEReader.TryOpenAssociatedPortablePdb Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Otwiera przenośny plik PDB skojarzony z tym obrazem 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
Ścieżka do obrazu PE. Ścieżka służy do lokalizowania pliku PDB znajdującego się w katalogu zawierającym plik PE.
Jeśli zostanie określona, wywołana w celu otwarcia Stream elementu dla danej ścieżki pliku. Oczekuje się, że dostawca zwróci czytelny i możliwy do Streamwyszukiwania , lub null
jeśli plik docelowy nie istnieje lub powinien zostać zignorowany z jakiegoś powodu. Dostawca powinien zgłosić błąd IOException , jeśli nie można otworzyć pliku z powodu nieoczekiwanego błędu we/wy.
- pdbReaderProvider
- MetadataReaderProvider
W przypadku pomyślnego odczytania przenośnego MetadataReaderProvider pliku PDB zostanie użyte nowe wystąpienie.
- pdbPath
- String
Jeśli plik PDB zostanie znaleziony w pliku, ścieżka do pliku lub null
jeśli plik PDB jest osadzony w samym obrazie PE.
Zwraca
true
jeśli obraz PE ma skojarzony z nim plik PDB i plik PDB został pomyślnie otwarty; w przeciwnym razie , false
.
Wyjątki
peImagePath
lub pdbFileStreamProvider
ma wartość null
.
Strumień zwrócony z pdbFileStreamProvider
elementu nie obsługuje operacji odczytu i wyszukiwania.
Nie znaleziono pasującego pliku PDB z powodu błędu: obraz PE lub plik PDB jest nieprawidłowy.
Nie znaleziono pasującego pliku PDB z powodu błędu: Wystąpił błąd we/wy podczas odczytywania obrazu PE lub pliku PDB.
Uwagi
Ta metoda implementuje proste wyszukiwanie plików PDB na podstawie zawartości katalogu debugowania obrazu PE. Bardziej zaawansowane narzędzie może wymagać dodatkowego wyszukiwania ścieżek wyszukiwania lub serwera symboli.
Metoda wyszukuje plik PDB w następującej kolejności:
- Sprawdza pasujący plik PDB nazwy znalezionej we wpisie CodeView w katalogu zawierającym plik PE (katalog
peImagePath
). - Sprawdza, czy plik PDB jest osadzony w samym obrazie PE.
Zwracany jest pierwszy plik PDB zgodny z informacjami określonymi w katalogu debugowania.