Share via


Método IMetaDataAssemblyImport::FindAssembliesByName

Obtém uma matriz de assemblies com o parâmetro szAssemblyName especificado, usando as regras padrão empregadas pelo CLR (Common Language Runtime) para resolver referências.

Sintaxe

HRESULT FindAssembliesByName (  
    [in]  LPCWSTR     szAppBase,
    [in]  LPCWSTR     szPrivateBin,
    [in]  LPCWSTR     szAssemblyName,
    [out] IUnknown    *ppIUnk[],
    [in]  ULONG       cMax,
    [out] ULONG       *pcAssemblies  
);  

Parâmetros

szAppBase
[in] O diretório raiz no qual pesquisar o assembly fornecido. Se esse valor for definido como null, FindAssembliesByName será exibido apenas no cache de assembly global para o assembly.

szPrivateBin
[in] Uma lista de subdiretórios delimitados por ponto e vírgula (por exemplo, "bin;bin2"), no diretório raiz, no qual pesquisar o assembly. Esses diretórios são investigados além daqueles especificados nas regras de investigação padrão.

szAssemblyName
[in] O nome do assembly a ser encontrado. O formato dessa cadeia de caracteres é definido na página de referência de classe para AssemblyName.

ppIUnk
[out] Uma matriz que contém os ponteiros da interface IMetadataAssemblyImport.

cMax
[in] O número máximo de ponteiros de interface a serem colocados em ppIUnk.

pcAssemblies
[out] O número de ponteiros de interface retornados, ou seja, o número de ponteiros de interface realmente colocados em ppIUnk.

Valor Retornado

HRESULT Descrição
S_OK FindAssembliesByName retornou com êxito.
S_FALSE Não há assemblies.

Comentários

Dado um nome de assembly, o método FindAssembliesByName localiza o assembly seguindo as regras padrão para resolver referências de assembly. (Para obter mais informações, consulte Como o Runtime localiza assemblies.) O FindAssembliesByName permite que o chamador configure vários aspectos do contexto de resolvedor de assembly, como base de aplicativo e caminho de pesquisa privado.

O método FindAssembliesByName exige que o CLR seja inicializado no processo para invocar a lógica de resolução do assembly. Portanto, você precisachamar CoInitializeEE (passando COINITEE_DEFAULT) antes de chamar FindAssembliesByName e, em seguida, prosseguir com uma chamada para CoUninitializeCor.

O FindAssembliesByName retorna um ponteiro IMetaDataImport para o arquivo que contém o manifesto do assembly para o nome do assembly passado. Se o nome do assembly fornecido não estiver totalmente especificado (por exemplo, se ele não incluir uma versão), vários assemblies poderão ser retornados.

O FindAssembliesByName é comumente usado por um compilador que tenta localizar um assembly referenciado em tempo de compilação.

Requisitos

Plataformas: confira Requisitos do sistema.

Cabeçalho: Cor.h

Biblioteca: usada como um recurso na MsCorEE.dll

Versões do .NET Framework: Disponíveis desde a versão 1.0

Confira também