Udostępnij za pośrednictwem


ICLRDebuggingLibraryProvider2::P rovideLibrary2 , metoda

Umożliwia debugerowi udostępnienie ścieżki do biblioteki debugowania środowiska uruchomieniowego języka wspólnego specyficznego dla wersji (CLR).

Składnia

HRESULT ProvideLibrary2 (
     [in] const WCHAR* pwszFileName,
     [in] DWORD dwTimestamp,
     [in] DWORD dwSizeOfImage,
     [out] LPWSTR* ppResolvedModulePath);

Parametry

pwszFilename
[in] Nazwa żądanego modułu.

dwTimestamp
[in] Sygnatura czasowa daty przechowywana w nagłówku pliku COFF plików PE.

dwSizeOfImage
[in] Pole SizeOfImage przechowywane w opcjonalnym nagłówku pliku COFF plików PE.

ppResolvedModulePath
[out] Jest to ścieżka zakończona o wartości null do biblioteki dll modułu. W systemie Windows należy go przydzielić za pomocą polecenia CoTaskMemAlloc. W systemie Unix należy go przydzielić malloc. Niepowodzenie pozostawia go nietknięte. Zobacz poniższą notatkę zabezpieczeń!

Wartość zwracana

Ta metoda zwraca następujące konkretne błędy HRESULT, a także HRESULT, które wskazują błąd metody.

HRESULT opis
S_OK Metoda została ukończona pomyślnie.

Uwagi

ProvideLibrary2 umożliwia debugerowi udostępnianie modułów potrzebnych do debugowania określonych plików CLR, takich jak mscordbi.dll i mscordacwks.dll.

Debuger może użyć dowolnych dostępnych środków do zlokalizowania lub pozyskania modułu debugowania.

Ważne

Ta funkcja umożliwia wywołującym interfejs API udostępnianie modułów zawierających pliki wykonywalne i potencjalnie złośliwe kod. Jako środek ostrożności, obiekt wywołujący nie ProvideLibrary2 powinien używać do rozpowszechniania żadnego kodu, którego nie chce 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 wersji plików i odrzucać nieprawidłowe wersje, jeśli są one podane w odpowiedzi na każde żądanie. Taka sytuacja może wystąpić tylko wtedy, gdy użytkownik wprowadził poprawkę do nowej wersji podkładki. Wersje bez poprawek pozostaną podatne na zagrożenia.

Wymagania

Platformy: zobacz Obsługiwane systemy operacyjne .NET.

Nagłówek: dbgshim.h

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

Wersje platformy .NET: dostępne od wersji .NET Core 2.1