Compartilhar via


Método IHostAssemblyManager::GetNonHostStoreAssemblies

Obtém um ponteiro de interface para um ICLRAssemblyReferenceList que representa a lista de assemblies que o host espera que o CLR (Common Language Runtime) carregue.

Sintaxe

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

Parâmetros

ppReferenceList
[out] Um ponteiro para o endereço de um ICLRAssemblyReferenceList que contém uma lista de referências a assemblies que o host espera que o CLR carregue.

Valor Retornado

HRESULT Descrição
S_OK GetNonHostStoreAssemblies retornado com êxito.
HOST_E_CLRNOTAVAILABLE O CLR não foi carregado em um processo, ou o CLR está em um estado no qual não pode executar código gerenciado ou processar a chamada com êxito.
HOST_E_TIMEOUT Uma chamada atingiu o tempo limite.
HOST_E_NOT_OWNER O chamador não possui o bloqueio.
HOST_E_ABANDONED Um evento foi cancelado enquanto uma fibra ou um thread bloqueado estava esperando por ele.
E_FAIL Uma falha catastrófica desconhecida ocorreu. Quando um método retorna E_FAIL, o CLR não pode mais ser usado no processo. Chamadas subsequentes para métodos de hospedagem retornam HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY Não havia memória suficiente disponível para criar a lista de referências para o ICLRAssemblyReferenceList solicitado.

Comentários

O CLR resolve referências usando o seguinte conjunto de diretrizes:

  • Primeiro, ele consulta a lista de referências de assembly retornadas por GetNonHostStoreAssemblies.

  • Se o assembly aparecer na lista, o CLR será associado a ele normalmente.

  • Se o assembly não aparecer na lista e o host tiver fornecido uma implementação do IHostAssemblyStore, o CLR chamará IHostAssemblyStore::ProvideAssembly para permitir que o host forneça o assembly ao qual se associar.

  • Caso contrário, o CLR não será associado ao assembly.

Se o host definir ppReferenceList como nulo, o CLR primeiro investigará o cache de assembly global, chamará ProvideAssembly e, em seguida, investigará a base de aplicativo para resolver uma referência de assembly.

Observação

Após a inicialização, o CLR chama GetNonHostStoreAssemblies somente uma vez. O método não é chamado novamente.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: MSCorEE.h

Biblioteca: incluída como um recurso no MSCorEE.dll

Versões do .NET Framework: disponíveis desde 2.0

Confira também