Comparteix a través de


ICLRDebuggingLibraryProvider::ProvideLibrary (Método)

Obtiene una interfaz de devolución de llamada del proveedor de bibliotecas que permite buscar y cargar a petición bibliotecas de depuración específicas de la versión de Common Language Runtime (CLR).

Sintaxis

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

Parámetros

pwszFilename
[in] Nombre del módulo que se está solicitando.

dwTimestamp
[in] Marca de fecha y hora almacenada en el encabezado de archivo COFF de archivos PE.

dwSizeOfImage
[in] Campo SizeOfImage almacenado en el encabezado de archivo opcional COFF de archivos PE.

hModule
[out] Identificador del módulo solicitado.

Valor devuelto

Este método devuelve los siguientes HRESULT específicos y los errores HRESULT que indican un error del método.

HRESULT Descripción
S_OK El método se completó correctamente.

Excepciones

Notas

ProvideLibrary permite que el depurador proporcione módulos necesarios para depurar archivos CLR específicos, como mscordbi.dll y mscordacwks.dll. Los identificadores del módulo deben permanecer válidos hasta que una llamada al método ICLRDebugging::CanUnloadNow indica que se pueden liberar, en cuyo momento es responsabilidad del autor de la llamada liberar los identificadores.

El depurador puede usar cualquier medio disponible para buscar o adquirir el módulo de depuración.

Importante

Esta característica permite que el autor de la llamada API proporcione módulos que contienen código ejecutable y posiblemente malintencionado. Como precaución de seguridad, el autor de la llamada no debe usar ProvideLibrary para distribuir ningún código que no esté dispuesto a ejecutarse por sí mismo.

Si se detecta un problema de seguridad grave en una biblioteca ya publicada, como mscordbi.dll o mscordacwks.dll, se puede aplicar una revisión a la corrección de compatibilidad (shim) para que reconozca las versiones incorrectas de los archivos. A continuación, las correcciones de compatibilidad pueden emitir solicitudes para las versiones revisadas de los archivos y rechazar las versiones incorrectas si se proporcionan en respuesta a cualquier solicitud. Esto solo puede ocurrir si el usuario ha revisado una nueva versión de la corrección de compatibilidad. Las versiones sin revisar seguirán siendo vulnerables.

Requisitos

Plataformas: Vea Requisitos de sistema.

Encabezado: CorDebug.idl, CorDebug.h

Biblioteca: CorGuids.lib

Versiones de .NET Framework: disponible a partir de la versión 4

Consulte también