Dela via


ICLRDebuggingLibraryProvider::P rovideLibrary Method

Hämtar ett gränssnitt för återanrop från biblioteksprovidern som gör att clr-versionsspecifika felsökningsbibliotek (Common Language Runtime) kan lokaliseras och läsas in på begäran.

Syntax

HRESULT ProvideLibrary(
     [in] const WCHAR* pwszFileName,
     [in] DWORD dwTimestamp,
     [in] DWORD dwSizeOfImage,
     [out] HMODULE* hModule);

Parametrar

pwszFilename
[in] Namnet på modulen som begärs.

dwTimestamp
[in] Datum/tid-stämpeln som lagras i COFF-filhuvudet för PE-filer.

dwSizeOfImage
[in] Fältet SizeOfImage som lagras i det valfria COFF-filhuvudet för PE-filer.

hModule
[ut] Referensen till den begärda modulen.

Returvärde

Den här metoden returnerar följande specifika HRESULT-fel samt HRESULT-fel som indikerar metodfel.

HRESULT Description
S_OK Metoden har slutförts.

Undantag

Anmärkningar

ProvideLibrary gör att felsökaren kan tillhandahålla moduler som behövs för felsökning av specifika CLR-filer, till exempel mscordbi.dll och mscordacwks.dll. Modulreferenserna måste vara giltiga tills ett anrop till ICLRDebugging::CanUnloadNow-metoden anger att de kan friges, och då är det anroparens ansvar att frigöra handtagen.

Felsökningsprogrammet kan använda alla tillgängliga metoder för att hitta eller köpa 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 ProvideLibrary för att distribuera någon kod som den inte är villig att köra sig själv.

Om ett allvarligt säkerhetsproblem identifieras 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. Odefinierade versioner förblir sårbara.

Krav

Plattformar: Se Systemkrav.

Huvudet: CorDebug.idl, CorDebug.h

Bibliotek: CorGuids.lib

.NET Framework versioner: Tillgänglig sedan 4

Se även