ICLRDebuggingLibraryProvider2::P rovideLibrary2-metod
Tillåter felsökningsprogrammet att ange en sökväg till ett versionsspecifikt CLR-felsökningsbibliotek (Common Language Runtime).
Syntax
HRESULT ProvideLibrary2 (
[in] const WCHAR* pwszFileName,
[in] DWORD dwTimestamp,
[in] DWORD dwSizeOfImage,
[out] LPWSTR* ppResolvedModulePath);
Parametrar
pwszFilename
[i] Namnet på modulen som begärs.
dwTimestamp
[i] Datumtidsstämpeln som lagras i COFF-filhuvudet för PE-filer.
dwSizeOfImage
[i] Fältet SizeOfImage
som lagras i den valfria COFF-filrubriken för PE-filer.
ppResolvedModulePath
[ut] Det här är en null-avslutad sökväg till moduldllen. I Windows ska den allokeras med CoTaskMemAlloc. På Unix ska den allokeras med malloc. Felet lämnar det orört. Se säkerhetsanteckningen nedan!
Returvärde
Den här metoden returnerar följande specifika HRESULT-fel samt HRESULT-fel som indikerar metodfel.
HRESULT | beskrivning |
---|---|
S_OK |
Metoden har slutförts. |
Kommentarer
ProvideLibrary2
tillåter felsökningsprogrammet att tillhandahålla moduler som behövs för felsökning av specifika CLR-filer, till exempel mscordbi.dll och mscordacwks.dll.
Felsökningsprogrammet kan använda alla tillgängliga metoder för att hitta eller skaffa felsökningsmodulen.
Viktigt!
Med den här funktionen kan API-anroparen tillhandahålla moduler som innehåller körbar och eventuellt skadlig kod. Som en säkerhetsåtgärd bör anroparen inte använda ProvideLibrary2
för att distribuera någon kod som den inte är villig att köra själv.
Om ett allvarligt säkerhetsproblem upptäcks i ett bibliotek som redan har släppts, till exempel mscordbi.dll eller mscordacwks.dll, kan shim korrigeras för att identifiera de felaktiga versionerna av filerna. Shim kan sedan utfärda begäranden för de korrigerade versionerna av filerna och avvisa de felaktiga versionerna om de tillhandahålls som svar på en begäran. Detta kan bara inträffa om användaren har korrigerat till en ny version av shim. Ej kopplade versioner förblir sårbara.
Behov
Plattformar: Se operativsystem som stöds av .NET.
Rubrik: dbgshim.h
Bibliotek: dbgshim.dll, libdbgshim.so, libdbgshim.dylib
.NET-versioner: Finns sedan .NET Core 2.1