ICLRDebuggingLibraryProvider::ProvideLibrary — Metoda
Pobiera interfejs wywołania zwrotnego dostawcy biblioteki, który umożliwia zlokalizowanie i załadowanie bibliotek debugowania specyficznych dla środowiska uruchomieniowego języka wspólnego (CLR) na żądanie.
Składnia
HRESULT ProvideLibrary(
[in] const WCHAR* pwszFileName,
[in] DWORD dwTimestamp,
[in] DWORD dwSizeOfImage,
[out] HMODULE* hModule);
Parametry
pwszFilename
[w] Nazwa żądanego modułu.
dwTimestamp
[w] Sygnatura czasowa daty przechowywana w nagłówku pliku COFF plików PE.
dwSizeOfImage
[w] Pole SizeOfImage
przechowywane w opcjonalnym nagłówku pliku COFF plików PE.
hModule
[out] Dojście do żądanego modułu.
Wartość zwracana
Ta metoda zwraca następujące określone elementy HRESULTs, a także błędy HRESULT wskazujące niepowodzenie metody.
HRESULT | Opis |
---|---|
S_OK | Metoda została ukończona pomyślnie. |
Wyjątki
Uwagi
ProvideLibrary
umożliwia debugerowi udostępnianie modułów potrzebnych do debugowania określonych plików CLR, takich jak mscordbi.dll i mscordacwks.dll. Obsługa modułu musi pozostać prawidłowa, dopóki wywołanie metody ICLRDebugging::CanUnloadNow wskazuje, że mogą zostać uwolnione, w którym momencie jest to odpowiedzialność wywołującego za zwolnienie dojść.
Debuger może używać dowolnych dostępnych środków w celu zlokalizowania lub pozyskania modułu debugowania.
Ważne
Ta funkcja umożliwia obiektowi wywołującej interfejs API udostępnianie modułów zawierających pliki wykonywalne i potencjalnie złośliwego kodu. Jako środek ostrożności, obiekt wywołujący nie powinien używać ProvideLibrary
do rozpowszechniania kodu, który nie jest gotów wykonać.
W przypadku wykrycia poważnego problemu z zabezpieczeniami w już wydanej bibliotece, takiej jak mscordbi.dll lub mscordacwks.dll, podkładka może zostać poprawiona w celu rozpoznania nieprawidłowych wersji plików. Podkładka może następnie wysyłać żądania dotyczące poprawek plików i odrzucać nieprawidłowe wersje, jeśli są one udostępniane w odpowiedzi na dowolne żądanie. Taka sytuacja może wystąpić tylko wtedy, gdy użytkownik wprowadził poprawkę do nowej wersji podkładki. Niespatchowane wersje pozostaną podatne na zagrożenia.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: CorDebug.idl, CorDebug.h
Biblioteki: CorGuids.lib
wersje .NET Framework: dostępne od 4