Compartir a través de


CompareAssemblyIdentityWithConfig (Función)

Compara dos identidades de ensamblado para determinar si son equivalentes después de aplicar elementos de la directiva de portabilidad de un archivo de configuración especificado.

STDAPI CompareAssemblyIdentityWithConfig (
    [in]  LPCWSTR                  pwzAssemblyIdentity1,
    [in]  BOOL                     fUnified1,
    [in]  LPCWSTR                  pwzAssemblyIdentity2,
    [in]  BOOL                     fUnified2,
    [in]  struct AssemblyConfig    *pAssemblyConfig,
    [out] BOOL                     *pfEquivalent,
    [out] AssemblyComparisonResult *pResult
 );

Parámetros

  • pwzAssemblyIdentity1
    [in] Identidad textual del primer ensamblado de la comparación.

  • fUnified1
    [in] Marcador booleano que indica la unificación especificada por el usuario para pwzAssemblyIdentity1.

  • pwzAssemblyIdentity2
    [in] Identidad textual del segundo ensamblado de la comparación.

  • fUnified2
    [in] Marcador booleano que indica la unificación especificada por el usuario para pwzAssemblyIdentity2.

  • pAssemblyConfig
    [in] Archivo de configuración que contiene información que afecta a la directiva de portabilidad, como el elemento <supportPortability>.

  • pfEquivalent
    [out] Marcador booleano que indica si los dos ensamblados son equivalentes.

  • pResult
    [out] Valor AssemblyComparisonResult que contiene información detallada sobre la comparación.

Valor devuelto

pfEquivalent devuelve un valor booleano que indica si dos ensamblados son equivalentes. pResult devuelve uno de los valores AssemblyComparisonResult, para proporcionar una razón más detallada para el valor de pfEquivalent.

Comentarios

CompareAssemblyIdentityWithConfig comprueba si pwzAssemblyIdentity1 y pwzAssemblyIdentity2 son equivalentes. pfEquivalent se establece en true si se cumplen una o varias de las condiciones siguientes después de la aplicación de cualquier elemento en pAssemblyConfig que afecte a la directiva de portabilidad:

  • Las dos identidades de ensamblado son equivalentes. Para los ensamblados con nombre seguro, la equivalencia requiere que el nombre, la versión, el símbolo (token) de la clave pública y la referencia cultural del ensamblado sean idénticos. Para los ensamblados con nombre simple, la equivalencia requiere que coincidan el nombre y la referencia cultural del ensamblado.

  • Ambas identidades de ensamblado hacen referencia a ensamblados que se ejecutan en .NET Framework. Esta condición devuelve true aun cuando los números de versión de ensamblado no coincidan.

  • Los dos ensamblados no son ensamblados administrados, pero fUnified1 o fUnified2 se establecieron en true.

El marcador fUnified indica que todos los números de versión hasta el del ensamblado con nombre seguro se consideran equivalentes al ensamblado con nombre seguro. Por ejemplo, si el valor de pwzAssemblyIndentity1 es "MyAssembly, version=3.0.0.0, culture=neutral, publicKeyToken=....", y el valor de fUnified1 es true, esto indica que todas las versiones de MyAssembly desde la versión 0.0.0.0 hasta la versión 3.0.0.0 deberían ser equivalentes. En tal caso, si pwzAssemblyIndentity2 hace referencia al mismo ensamblado que pwzAssemblyIndentity1, pero tiene un número de versión más bajo, pfEquivalent se establece en true. Si pwzAssemblyIdentity2 hace referencia a un número de versión mayor, pfEquivalent se establece en true sólo si el valor de fUnified2 es true.

El parámetro pResult incluye información específica sobre por qué los dos ensamblados se consideran equivalentes o no equivalentes. Para obtener más información, vea AssemblyComparisonResult (Enumeración).

Requisitos

Plataformas: vea Requisitos de sistema de .NET Framework.

Encabezado: Fusion.h

Biblioteca: Se incluye como recurso en MsCorEE.dll

Versiones de .NET Framework: 4

Vea también

Referencia

AssemblyComparisonResult (Enumeración)

Shfusion.dll (Visor de la memoria caché de ensamblados)

CompareAssemblyIdentity (Función)

Otros recursos

Funciones estáticas globales de la fusión

Historial de cambios

Fecha

Historial

Motivo

Mayo de 2011

Errores corregidos en la documentación inicial.

Comentarios de los clientes.

Marzo de 2011

Se agregó la documentación de la API que faltaba.

Corrección de errores de contenido.