Compartir vía


IMetaDataAssemblyImport::FindAssembliesByName (Método)

Obtiene una matriz de ensamblados con el parámetro szAssemblyName especificado, mediante las reglas estándar que Common Language Runtime (CLR) utiliza para resolver las referencias.

Sintaxis

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

Parámetros

szAppBase
[in] Directorio raíz en el que se va a buscar el ensamblado especificado. Si este valor se establece en null, FindAssembliesByName solo buscará el ensamblado en la caché global de ensamblados.

szPrivateBin
[in] Lista de subdirectorios delimitados por punto y coma (por ejemplo, "bin;bin2"), en el directorio raíz, en el que se va a buscar el ensamblado. Se sondean estos directorios además de los especificados en las reglas predeterminadas de sondeo.

szAssemblyName
[in] Nombre del ensamblado que se va a buscar. El formato de esta cadena se define en la página de referencia de clase para AssemblyName.

ppIUnk
[out] Una matriz que contiene los punteros de interfaz IMetadataAssemblyImport.

cMax
[in] Número máximo de puntos de interfaz que se van a colocar en ppIUnk.

pcAssemblies
[out] Número de punteros de interfaz devueltos; es decir, el número de punteros de interfaz realmente colocados en ppIUnk.

Valor devuelto

HRESULT Descripción
S_OK Este valor le indica que FindAssembliesByName devolvió valores correctos.
S_FALSE No hay ensamblados.

Comentarios

Dado un nombre de ensamblado, el método FindAssembliesByName busca el ensamblado siguiendo las reglas estándar para resolver las referencias de ensamblado. (Para más información, consulte Cómo el motor en tiempo de ejecución ubica ensamblados). FindAssembliesByName permite que el autor de la llamada configure varios aspectos del contexto de resolución de ensamblado, como la base de la aplicación y la ruta de acceso a la búsqueda privada.

El método FindAssembliesByName requiere que CLR se inicialice en el proceso para invocar la lógica de resolución de ensamblado. Por lo tanto, debe llamar a CoInitializeEE (pasando COINITEE_DEFAULT) antes de llamar a FindAssembliesByName y, luego, seguir con una llamada a CoUninitializeCor.

FindAssembliesByName devuelve un puntero IMetaDataImport al archivo que contiene el manifiesto del ensamblado para el nombre de ensamblado que se pasa. Si el nombre de ensamblado dado no está completamente especificado (por ejemplo, si no incluye una versión), es posible que se devuelvan varios ensamblados.

FindAssembliesByName lo suele utilizar un compilador que intenta encontrar un ensamblado de referencia en tiempo de compilación.

Requisitos

Plataformas: Vea Requisitos de sistema.

Encabezado: Cor.h

Biblioteca: usada como recurso en MsCorEE.dll

Versiones de .NET Framework: está disponible desde la versión 1.0

Vea también