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