PEReader.TryOpenAssociatedPortablePdb Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Öppnar en bärbar PDB som är associerad med den här PE-avbildningen.
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
Parametrar
- peImagePath
- String
Sökvägen till PE-avbildningen. Sökvägen används för att hitta PDB-filen som finns i katalogen som innehåller PE-filen.
Om det anges anropas för att öppna en Stream för en viss filsökväg. Providern förväntas antingen returnera en läsbar och sökbar Stream, eller null om målfilen inte finns eller bör ignoreras av någon anledning. Providern bör utlösa IOException om den inte kan öppna filen på grund av ett oväntat I/O-fel.
- pdbReaderProvider
- MetadataReaderProvider
Om det lyckas används en ny instans av MetadataReaderProvider som ska användas för att läsa den bärbara PDB:n.
- pdbPath
- String
Om det lyckas och PDB hittas i en fil, sökvägen till filen eller null om PDB är inbäddad i SJÄLVA PE-avbildningen.
Returer
trueom PE-avbildningen har en PDB associerad med den och PDB har öppnats. annars . false
Undantag
peImagePath eller pdbFileStreamProvider är null.
Strömmen som returneras från pdbFileStreamProvider stöder inte läs- och sökåtgärder.
Ingen matchande PDB-fil hittades på grund av ett fel: PE-avbildningen eller PDB är ogiltig.
Ingen matchande PDB-fil hittades på grund av ett fel: Ett I/O-fel inträffade när PE-avbildningen eller PDB lästes.
Kommentarer
Den här metoden implementerar en enkel PDB-filsökning baserat på innehållet i PE-avbildningens felsökningskatalog. Ett mer avancerat verktyg kan behöva följa upp med ytterligare sökning på sökvägar eller en symbolserver.
Metoden söker upp PDB i följande ordning:
- Söker efter en matchande PDB-fil med namnet som finns i posten CodeView i katalogen som innehåller PE-filen (katalogen
peImagePathför ). - Söker efter en PDB som är inbäddad i själva PE-avbildningen.
Den första PDB som matchar den information som anges i felsökningskatalogen returneras.