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