Поделиться через


Метод ICLRDebuggingLibraryProvider3::P rovideWindowsLibrary

Возвращает интерфейс обратного вызова поставщика библиотеки, позволяющий находить и загружать библиотеки отладки для среды CLR, зависящие от среды CLR.

Синтаксис

HRESULT ProvideWindowsLibrary (
     [in] const WCHAR* pwszFileName,
     [in] const WCHAR* pwszRuntimeModule,
     [in] LIBRARY_PROVIDER_INDEX_TYPE indexType,
     [in] DWORD dwTimestamp,
     [in] DWORD dwSizeOfImage,
     [out] LPWSTR* ppResolvedModulePath);

Параметры

pwszFilename
[in] Имя запрашиваемого модуля.

pwszRuntimeModule
[in] Путь среды выполнения или модуля с одним файлом.

indexType
[in] Тип данных индекса (dwTimestamp/dwSizeOfImage), предоставленный. См. перечисление LIBRARY_PROVIDER_INDEX_TYPE .

dwTimestamp
[in] Метка времени даты, хранящейся в заголовке файла COFF файлов PE.

dwSizeOfImage
[in] SizeOfImage Поле, хранящееся в необязательном заголовке файла PE в COFF.

ppResolvedModulePath
[out] Это путь, завершаемый пустым, в библиотеку dll модуля. В Windows его следует выделить с помощью CoTaskMemAlloc. В Unix его следует выделить с помощью malloc. Неудача оставляет ее нетронутой. См. примечание по безопасности ниже!

Возвращаемое значение

Этот метод возвращает следующие определенные ошибки HRESULT, а также ошибки HRESULT, указывающие на сбой метода.

HRESULT Описание
S_OK Метод успешно завершен.

Замечания

ProvideWindowsLibrary позволяет отладчику предоставлять модули, необходимые для отладки определенных файлов СРЕДЫ CLR, таких как mscordbi.dll и mscordacwks.dll.

Отладчик может использовать любые доступные средства для поиска или приобретения модуля отладки.

Это важно

Эта функция позволяет вызывающей программе API предоставлять модули, содержащие исполняемый файл и, возможно, вредоносный код. В качестве меры предосторожности вызывающий объект не должен использовать ProvideWindowsLibrary для распространения кода, который не готов выполнить сам.

Если в уже выпущенной библиотеке обнаружена серьезная проблема безопасности, например mscordbi.dll или mscordacwks.dll, исправление может быть исправлено, чтобы распознать плохие версии файлов. Затем схим может выдавать запросы на исправленные версии файлов и отклонять плохие версии, если они предоставлены в ответ на любой запрос. Это может произойти только в том случае, если пользователь исправил новую версию оболочки. Неотреченные версии останутся уязвимыми.

Требования

Платформ: См. сведения о поддерживаемых операционных системах .NET.

Заголовок: dbgshim.h

Библиотека: dbgshim.dll, libdbgshim.so, libdbgshim.dylib

Версии .NET: Доступно с версии .NET Core 2.1