Compartir a través de


IHostAssemblyManager::GetNonHostStoreAssemblies (Método)

Obtiene un puntero de interfaz a una ICLRAssemblyReferenceList que representa la lista de ensamblados que el host espera que cargue Common Language Runtime (CLR).

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

Parámetros

  • ppReferenceList
    [out] Puntero a la dirección de una ICLRAssemblyReferenceList que contiene una lista de referencias a los ensamblados que el host espera que CLR cargue.

Valor devuelto

HRESULT

Descripción

S_OK

GetNonHostStoreAssemblies finalizó correctamente.

HOST_E_CLRNOTAVAILABLE

CLR no se ha cargado en un proceso o está en un estado en el que no puede ejecutar el código administrado o procesar la llamada correctamente.

HOST_E_TIMEOUT

Se agotó el tiempo de espera de la llamada.

HOST_E_NOT_OWNER

El llamador no posee el bloqueo.

HOST_E_ABANDONED

Se canceló un evento mientras una fibra o un subproceso bloqueado estaba esperándole.

E_FAIL

Se ha producido un error catastrófico desconocido. Si un método devuelve E_FAIL, CLR no se puede seguir utilizando en el proceso. Las llamadas subsiguientes a métodos de hospedaje devuelven HOST_E_CLRNOTAVAILABLE.

E_OUTOFMEMORY

No se dispone de memoria suficiente para crear la lista de referencias para el ICLRAssemblyReferenceList solicitado.

Comentarios

CLR resuelve las referencias utilizando el siguiente conjunto de instrucciones:

  • En primer lugar, consulta la lista de referencias de ensamblados devuelta por GetNonHostStoreAssemblies.

  • Si el ensamblado aparece en la lista, CLR se enlaza a él normalmente.

  • Si el ensamblado no aparece en la lista y el host ha proporcionado una implementación de IHostAssemblyStore, CLR llama a IHostAssemblyStore::ProvideAssembly para permitir al host proporcionar el ensamblado al que se va a enlazar.

  • En caso contrario, CLR no se enlaza al ensamblado.

Si el host establece ppReferenceList en null, CLR sondea primero la caché global de ensamblados; a continuación, llama a ProvideAssembly y sondea la base de la aplicación para resolver la referencia de ensamblado.

NotaNota

En la inicialización, CLR llama a GetNonHostStoreAssemblies una sola vez.No se llama al método de nuevo.

Requisitos

Plataformas: vea Requisitos de sistema de .NET Framework.

Encabezado: MSCorEE.h

Biblioteca: Se incluye como recurso en MsCorEE.dll

Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Vea también

Referencia

ICLRAssemblyReferenceList (Interfaz)

IHostAssemblyManager (Interfaz)

IHostAssemblyStore (Interfaz)