Compartir a través de


IHostAssemblyManager::GetNonHostStoreAssemblies (Método)

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

Sintaxis

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

Parámetros

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

Valor devuelto

HRESULT Descripción
S_OK GetNonHostStoreAssemblies se devolvió correctamente.
HOST_E_CLRNOTAVAILABLE Si se devuelve este valor, significa que Common Language Runtime (CLR) no se ha cargado en un proceso o se encuentra en un estado en el que no puede ejecutar código administrado ni procesar la llamada correctamente.
HOST_E_TIMEOUT Se agotó el tiempo de espera de la llamada.
HOST_E_NOT_OWNER El autor de la llamada no es el propietario del bloqueo.
HOST_E_ABANDONED Se canceló un evento mientras que una fibra o subproceso que estaba bloqueado lo estaba esperando.
E_FAIL Ocurrió un error grave desconocido. Si un método devuelve el valor E_FAIL, el CLR ya no se podrá usar en el proceso. Las llamadas que se hagan a los métodos de hospedaje posteriormente devolverán el valor HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY No hubo suficiente memoria disponible a fin de crear la lista de referencias para el elemento ICLRAssemblyReferenceList solicitado.

Comentarios

CLR resuelve las referencias mediante el conjunto de instrucciones siguiente:

  • En primer lugar, consulta la lista de referencias de ensamblado que devuelve GetNonHostStoreAssemblies.

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

  • 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 que el host proporcione el ensamblado al que se va a enlazar.

  • De lo contrario, CLR no se puede enlazar al ensamblado.

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

Nota

Después de la inicialización, CLR llama a GetNonHostStoreAssemblies solo una vez. No se vuelve a llamar al método.

Requisitos

Plataformas: Vea Requisitos de sistema.

Encabezado: MSCorEE.h

Biblioteca: incluida como recurso en MSCorEE.dll

Versiones de .NET Framework: disponible a partir de la versión 2.0

Consulte también