Partager via


ICLRDebuggingLibraryProvider::ProvideLibrary, méthode

Obtient une interface de rappel de fournisseur de bibliothèque qui permet la recherche et le chargement à la demande des bibliothèques de débogage spécifiques à la version du Common Language Runtime (CLR).

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

Paramètres

  • pwszFilename
    [in] Nom du module demandé.

  • dwTimestamp
    [in] Informations de date et heure stockées dans l'en-tête de fichier COFF de fichiers PE.

  • pLibraryProvider
    [in] Champ SizeOfImage stocké dans l'en-tête de fichier facultatif COFF de fichiers PE.

  • hModule
    [out] Handle vers le module demandé.

Valeur de retour

Cette méthode retourne les HRESULT spécifiques suivants ainsi que les erreurs HRESULT qui indiquent l'échec de la méthode.

HRESULT

Description

S_OK

La méthode s'est correctement terminée.

Notes

ProvideLibrary permet au débogueur de fournir des modules nécessaires pour le débogage de fichiers CLR spécifiques, tels que mscordbi.dll et mscordacwks.dll. Les handles de module doivent rester valides jusqu'à ce qu'un appel à la méthode ICLRDebugging::CanUnloadNow indique qu'ils peuvent être libérés. L'appelant est alors responsable de la libération des handles.

Le débogueur peut utiliser n'importe quel moyen disponible pour rechercher ou obtenir le module de débogage.

Remarque importanteImportant

Cette fonctionnalité permet à l'appelant de l'API de fournir des modules qui contiennent du code exécutable pouvant être malveillant.Pour des raisons de sécurité, l'appelant ne doit pas utiliser ProvideLibrary pour distribuer du code qui n'est pas disposé à s'exécuter.

Si un problème de sécurité sérieux est découvert dans une bibliothèque déjà libérée, telle que mscordbi.dll ou mscordacwks.dll, le shim peut être corrigé pour reconnaître les mauvaises versions des fichiers.Le shim peut ensuite émettre des demandes pour les versions corrigées des fichiers et rejeter les mauvaises versions si elles sont fournies en réponse à toute demande.Cela peut se produire uniquement si l'utilisateur utilise une nouvelle version corrigée du shim.Les versions non corrigées restent vulnérables.

Configuration requise

Plateformes : consultez Configuration requise du .NET Framework.

En-tête : CorDebug.idl, CorDebug,h

Bibliothèque : CorGuids.lib

Versions du .NET Framework : 4

Voir aussi

Autres ressources

Interfaces de débogage

Débogage (Référence des API non managées)