Função CompareAssemblyIdentity
Compara duas identidades de assembly para determinar se elas são equivalentes.
Sintaxe
STDAPI CompareAssemblyIdentity (
[in] LPCWSTR pwzAssemblyIdentity1,
[in] BOOL fUnified1,
[in] LPCWSTR pwzAssemblyIdentity2,
[in] BOOL fUnified2,
[out] BOOL *pfEquivalent,
[out] AssemblyComparisonResult *pResult
);
Parâmetros
pwzAssemblyIdentity1
[in] A identidade textual do primeiro assembly na comparação.
fUnified1
[in] Um sinalizador booliano que indica a unificação especificada pelo usuário para pwzAssemblyIdentity1
.
pwzAssemblyIdentity2
[in] A identidade textual do segundo assembly na comparação.
fUnified2
[in] Um sinalizador booliano que indica a unificação especificada pelo usuário para pwzAssemblyIdentity2
.
pfEquivalent
[out] Um sinalizador booliano que indica se os dois assemblies são equivalentes.
pResult
[out] Uma enumeração AssemblyComparisonResult que contém informações detalhadas sobre a comparação.
Valor Retornado
pfEquivalent
retorna um valor booliano que indica se os dois assemblies são equivalentes. pResult
retorna um dos AssemblyComparisonResult
valores para fornecer um motivo mais detalhado para o valor de pfEquivalent
.
Comentários
CompareAssemblyIdentity
verifica se pwzAssemblyIdentity1
e pwzAssemblyIdentity2
são equivalentes. pfEquivalent
é definido como true
em uma ou mais das seguintes condições:
As duas identidades de assembly são equivalentes. Para assemblies fortemente nomeados, a equivalência requer que o nome do assembly, a versão, o token de chave pública e a cultura sejam idênticos. Para assemblies simplesmente nomeados, a equivalência requer uma correspondência no nome e na cultura do assembly.
Ambas as identidades de assembly referem-se a assemblies executados no .NET Framework. Essa condição retornará
true
mesmo que os números de versão do assembly não correspondam.Os dois assemblies não são assemblies gerenciados, mas
fUnified1
oufUnified2
foram definidostrue
como .
O fUnified
sinalizador indica que todos os números de versão até o número de versão do assembly fortemente nomeado são considerados equivalentes ao assembly fortemente nomeado. Por exemplo, se o valor de pwzAssemblyIdentity1
for "MyAssembly, version=3.0.0.0, culture=neutral, publicKeyToken=....", e o valor de fUnified1
for true
, isso indicará que todas as versões do MyAssembly da versão 0.0.0.0 para 3.0.0.0 devem ser tratadas como equivalentes. Nesse caso, se pwzAssemblyIdentity2
se referir ao mesmo assembly pwzAssemblyIdentity1
que , exceto que ele tenha um número de versão inferior, pfEquivalent
será definido true
como . Se pwzAssemblyIdentity2
se referir a um número de versão mais alto, pfEquivalent
será definido true
como somente se o valor de fUnified2
for true
.
O pResult
parâmetro inclui informações específicas sobre por que os dois assemblies são considerados equivalentes ou não equivalentes. Para obter mais informações, consulte Enumeração AssemblyComparisonResult.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: Fusion.h
Biblioteca: incluída como um recurso no MsCorEE.dll
Versões do .NET Framework: disponíveis desde 2.0