Sdílet prostřednictvím


ICLRDebuggingLibraryProvider3::P rovideUnixLibrary – metoda

Umožňuje ladicímu programu poskytnout cestu k knihovně ladění CLR (Common Language Runtime) specifické pro konkrétní verzi v systémech macOS a Linux.

Syntaxe

HRESULT ProvideUnixLibrary (
     [in] const WCHAR* pwszFileName,
     [in] const WCHAR* pwszRuntimeModule,
     [in] LIBRARY_PROVIDER_INDEX_TYPE indexType,
     [in] BYTE* pbBuildId,
     [in] int iBuildIdSize,
     [out] LPWSTR* ppResolvedModulePath);

Parametry

pwszFilename
[v] Název požadovaného modulu.

pwszRuntimeModule
[v] Cesta modulu runtime nebo modulu s jedním souborem.

indexType
[v] Zadaný typ informací indexu (pBuildId). Viz LIBRARY_PROVIDER_INDEX_TYPE výčtu.

pbBuildId
[v] ID sestavení modulu Linux nebo macOS. Pokud se něco nepovedlo při načítání ID sestavení, může mít hodnotu null.

iBuildIdSize
[v] Počet bajtů v poli pbBuildId. Může být 0, pokud se při načítání ID buildu něco nepovedlo.

ppResolvedModulePath
[ven] Jedná se o nulovou ukončenou cestu k knihovně DLL modulu. V unixu by měl být přidělen coTaskMemAlloc. Na Unixu by měla být přidělena malloc. Chyba zůstane nedotčená. Podívejte se na poznámku k zabezpečení níže.

Vrácená hodnota

Tato metoda vrátí následující konkrétní HRESULT a také chyby HRESULT, které označují selhání metody.

HRESULT Popis
S_OK Metoda byla úspěšně dokončena.

Poznámky

ProvideUnixLibrary umožňuje ladicím programu poskytovat moduly potřebné k ladění konkrétních souborů CLR, jako jsou mscordbi.dll a mscordacwks.dll.

Ladicí program může použít jakékoli dostupné prostředky k vyhledání nebo pořízení modulu ladění.

Důležité

Tato funkce umožňuje volajícímu rozhraní API poskytovat moduly, které obsahují spustitelný a potenciálně škodlivý kód. Jako bezpečnostní opatření by volající neměl používat ProvideUnixLibrary k distribuci jakéhokoli kódu, který není ochotný provést sám.

Pokud je v již vydané knihovně zjištěn závažný problém se zabezpečením, například v mscordbi.dll nebo mscordacwks.dll, je možné převzorkování opravit, aby rozpoznal chybné verze souborů. Převráce může pak vydávat požadavky na opravené verze souborů a odmítnout chybné verze, pokud jsou k dispozici v reakci na jakýkoli požadavek. K tomu může dojít pouze v případě, že uživatel opravil novou verzi shimu. Nepatchované verze zůstanou zranitelné.

Požadavky

Platformy: Viz podporované operační systémy .NET.

Hlavička: dbgshim.h

Knihovna: dbgshim.dll, libdbgshim.so, libdbgshim.dylib

Verze .NET: Dostupné od .NET Core 2.1