Partager via


IHostAssemblyManager::GetNonHostStoreAssemblies, méthode

Obtient un pointeur d’interface vers un ICLRAssemblyReferenceList qui représente la liste des assemblys que l’hôte s’attend à ce que le CLR (Common Language Runtime) charge.

Syntaxe

HRESULT GetNonHostStoreAssemblies (  
    [out] ICLRAssemblyReferenceList **ppReferenceList  
);  

Paramètres

ppReferenceList
[out] Pointeur vers l’adresse d’une ICLRAssemblyReferenceList contenant une liste de références à des assemblys que l’hôte s’attend à ce que le CLR charge.

Valeur de retour

HRESULT Description
S_OK GetNonHostStoreAssemblies retourné.
HOST_E_CLRNOTAVAILABLE Le CLR n’a pas été chargé dans un processus ou son état ne lui permet pas d’exécuter du code managé ni de traiter l’appel correctement.
HOST_E_TIMEOUT L’appel a expiré.
HOST_E_NOT_OWNER L’appelant n’est pas propriétaire du verrou.
HOST_E_ABANDONED Un événement a été annulé alors qu’un thread ou une fibre bloqué l’attendait.
E_FAIL Une défaillance catastrophique inconnue s’est produite. Quand une méthode retourne E_FAIL, le CLR n’est plus utilisable au sein du processus. Les appels suivants aux méthodes d’hébergement renvoient HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY La mémoire disponible était insuffisante pour créer la liste de références pour la ICLRAssemblyReferenceList demandée.

Notes

Le CLR résout les références à l’aide de l’ensemble suivant d’instructions :

  • Tout d’abord, il consulte la liste des références d’assembly retournées par GetNonHostStoreAssemblies.

  • Si l’assembly apparaît dans la liste, le CLR s’y lie normalement.

  • Si l’assembly n’apparaît pas dans la liste et que l’hôte a fourni une implémentation d’IHostAssemblyStore, le CLR appelle IHostAssemblyStore::ProvideAssembly pour permettre à l’hôte de fournir l’assembly auquel se lier.

  • Sinon, le CLR ne parvient pas à se lier à l’assembly.

Si l’hôte définit ppReferenceList sur null, le CLR commence par sonder le Global Assembly Cache, appelle ProvideAssembly, puis sonde la base de l’application pour résoudre une référence d’assembly.

Notes

Lors de l’initialisation, le CLR n’appelle GetNonHostStoreAssemblies qu’une seule fois. La méthode n’est pas appelée à nouveau.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : MSCorEE.h

Bibliothèque : incluse en tant que ressource dans MsCorEE.dll

Versions de .NET Framework : Disponible depuis la version 2.0

Voir aussi