Функция CompareAssemblyIdentity
Сравнивает два удостоверения сборки, чтобы определить, являются ли они эквивалентными.
Синтаксис
STDAPI CompareAssemblyIdentity (
[in] LPCWSTR pwzAssemblyIdentity1,
[in] BOOL fUnified1,
[in] LPCWSTR pwzAssemblyIdentity2,
[in] BOOL fUnified2,
[out] BOOL *pfEquivalent,
[out] AssemblyComparisonResult *pResult
);
Параметры
pwzAssemblyIdentity1
[in] Текстовое удостоверение первой сборки в сравнении.
fUnified1
[in] Логический флаг, указывающий на определяемую пользователем унификацию для pwzAssemblyIdentity1
.
pwzAssemblyIdentity2
[in] Текстовое удостоверение второй сборки в сравнении.
fUnified2
[in] Логический флаг, указывающий на определяемую пользователем унификацию для pwzAssemblyIdentity2
.
pfEquivalent
[out] Логический флаг, указывающий, эквивалентны ли эти две сборки.
pResult
[out] Перечисление AssemblyComparisonResult , содержащее подробные сведения о сравнении.
Возвращаемое значение
pfEquivalent
возвращает логическое значение, указывающее, эквивалентны ли эти две сборки. pResult
возвращает одно из значений AssemblyComparisonResult
, чтобы указать более подробную причину для значения pfEquivalent
.
Комментарии
CompareAssemblyIdentity
проверяет, эквивалентны ли pwzAssemblyIdentity1
и pwzAssemblyIdentity2
. pfEquivalent
для параметра задано значение true
в соответствии с одним или несколькими из следующих условий:
Два удостоверения сборки эквивалентны. Для сборок со строгими именами эквивалентность требует, чтобы имя сборки, версия, маркер открытого ключа и язык и региональные параметры были идентичными. Для просто именованных сборок эквивалентность требует соответствия имени сборки и языка и региональных параметров.
Оба удостоверения сборки относятся к сборкам, которые выполняются на платформа .NET Framework. Это условие возвращается
true
, даже если номера версий сборки не совпадают.Эти две сборки не являются управляемыми сборками, но
fUnified1
для параметра илиfUnified2
задано значениеtrue
.
Флаг fUnified
указывает, что все номера версий вплоть до номера версии сборки со строгим именем считаются эквивалентными сборке со строгим именем. Например, если значение pwzAssemblyIdentity1
параметра — "MyAssembly, version=3.0.0.0, culture=neutral, publicKeyToken=....", а значение fUnified1
равно true
, это означает, что все версии MyAssembly от версии 0.0.0.0 до 3.0.0.0.0 должны рассматриваться как эквивалентные. В таком случае, если pwzAssemblyIdentity2
ссылается на ту же сборку pwzAssemblyIdentity1
, что и , за исключением того, что она имеет более низкий номер версии, pfEquivalent
устанавливается значение true
. Если pwzAssemblyIdentity2
ссылается на более высокий номер версии, параметру присваивается true
значение только в том случае, pfEquivalent
если значение fUnified2
равно true
.
Параметр pResult
содержит конкретные сведения о том, почему две сборки считаются эквивалентными или не эквивалентными. Дополнительные сведения см. в разделе Перечисление AssemblyComparisonResult.
Требования
Платформы: см. раздел Требования к системе.
Заголовка: Fusion.h
Библиотека: Включается в качестве ресурса в MsCorEE.dll
версии платформа .NET Framework: доступно с версии 2.0.