Condividi tramite


Metodo IHostAssemblyManager::GetNonHostStoreAssemblies

Ottiene un puntatore di interfaccia a un oggetto ICLRAssemblyReferenceList che rappresenta l'elenco di assembly che l'host prevede il caricamento di Common Language Runtime (CLR).

Sintassi

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

Parametri

ppReferenceList
[out] Puntatore all'indirizzo di un ICLRAssemblyReferenceList oggetto che contiene un elenco di riferimenti agli assembly che l'host prevede il caricamento di CLR.

Valore restituito

HRESULT Descrizione
S_OK GetNonHostStoreAssemblies restituito correttamente.
HOST_E_CLRNOTAVAILABLE CLR non è stato caricato in un processo oppure CLR si trova in uno stato in cui non può eseguire codice gestito o elaborare correttamente la chiamata.
HOST_E_TIMEOUT Timeout della chiamata.
HOST_E_NOT_OWNER Il chiamante non possiede il blocco.
HOST_E_ABANDONED Un evento è stato annullato durante l'attesa di un thread o di una fibra bloccata.
E_FAIL Si è verificato un errore irreversibile sconosciuto. Quando un metodo restituisce E_FAIL, CLR non è più utilizzabile all'interno del processo. Le chiamate successive ai metodi di hosting restituiscono HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY Memoria insufficiente per creare l'elenco di riferimenti per l'oggetto richiesto ICLRAssemblyReferenceList.

Commenti

CLR risolve i riferimenti usando il set di linee guida seguente:

  • In primo luogo, consulta l'elenco di riferimenti ad assembly restituiti da GetNonHostStoreAssemblies.

  • Se l'assembly viene visualizzato nell'elenco, CLR viene associato normalmente.

  • Se l'assembly non viene visualizzato nell'elenco e l'host ha fornito un'implementazione di IHostAssemblyStore, CLR chiama IHostAssemblyStore::P rovideAssembly per consentire all'host di fornire l'assembly a cui eseguire l'associazione.

  • In caso contrario, CLR non riesce a eseguire l'associazione all'assembly.

Se l'host imposta su ppReferenceList Null, CLR esegue prima il probe della Global Assembly Cache, chiama ProvideAssemblye quindi esegue il probe della base dell'applicazione per risolvere un riferimento all'assembly.

Nota

Al momento dell'inizializzazione, CLR chiama GetNonHostStoreAssemblies una sola volta. Il metodo non viene chiamato di nuovo.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: MSCorEE.h

Libreria: Incluso come risorsa in MSCorEE.dll

Versioni di .NET Framework: Disponibile dalla versione 2.0

Vedi anche