次の方法で共有


CompareAssemblyIdentityWithConfig 関数

更新 : 2011 年 5 月

指定した構成ファイルから移植性ポリシー要素を適用した後に、2 つのアセンブリ ID が等しいかどうかを調べます。

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

パラメーター

  • pwzAssemblyIdentity1
    [入力] 比較する 1 つ目のアセンブリのテキストの ID。

  • fUnified1
    [入力] pwzAssemblyIdentity1 のバージョン番号の同一視についてのユーザー指定を示すブール型のフラグ。

  • pwzAssemblyIdentity2
    [入力] 比較する 2 つ目のアセンブリのテキストの ID。

  • fUnified2
    [入力] pwzAssemblyIdentity2 のバージョン番号の同一視についてのユーザー指定を示すブール型のフラグ。

  • pAssemblyConfig
    [入力] 移植性ポリシーに影響する情報 (<supportPortability> 要素など) が格納されている構成ファイル。

  • pfEquivalent
    [出力] 2 つのアセンブリが等しいかどうかを示すブール型のフラグ。

  • pResult
    [出力] 比較の詳細情報を含む AssemblyComparisonResult 値。

戻り値

pfEquivalent は、2 つのアセンブリが等しいかどうかを示すブール値を返します。 pResult は、AssemblyComparisonResult 値のいずれかを返し、pfEquivalent の値についてさらに詳しい理由を示します。

解説

CompareAssemblyIdentityWithConfig は、pwzAssemblyIdentity1 と pwzAssemblyIdentity2 が等しいかどうかを調べます。 移植性ポリシーに影響する pAssemblyConfig の要素の適用後に次の 1 つ以上の条件に当てはまる場合、pfEquivalent は true に設定されます。

  • 2 つのアセンブリ ID が等しい。 厳密な名前付きのアセンブリの場合、等価であるためには、アセンブリの名前、バージョン、公開キー トークン、およびカルチャが同一であることが要求されます。 簡易名のアセンブリの場合は、等価であるためにはアセンブリの名前とカルチャが一致することが要求されます。

  • 両方のアセンブリ ID が .NET Framework で動作するアセンブリを参照している。 この状況では、アセンブリのバージョン番号が一致しなくても true が返されます。

  • 2 つのアセンブリはマネージ アセンブリではないが、fUnified1 または fUnified2 が true に設定された。

fUnified フラグは、厳密な名前付きアセンブリのバージョンまでのすべてのバージョン番号が、その厳密な名前付きアセンブリと等しいと見なされることを示します。 たとえば、pwzAssemblyIndentity1 の値が "MyAssembly, version=3.0.0.0, culture=neutral, publicKeyToken=...." で、fUnified1 の値が true である場合、これは、バージョン 0.0.0.0 から 3.0.0.0 までの MyAssembly のすべてのバージョンを等価として扱う必要があります。 このような場合、pwzAssemblyIndentity2 が、バージョン番号は下だが pwzAssemblyIndentity1 と同じアセンブリを参照している場合、pfEquivalent は true に設定されます。 pwzAssemblyIdentity2 が参照しているバージョン番号の方が上の場合は、fUnified2 値が true の場合のみ、pfEquivalent が true になります。

pResult パラメーターには、2 つのアセンブリが等価と見なされる、または等価でないと見なされる理由についての固有の情報が含まれます。 詳細については、「AssemblyComparisonResult 列挙体」を参照してください。

必要条件

プラットフォーム:.NET Framework システム要件」を参照

ヘッダー: Fusion.h

ライブラリ: MsCorEE.dll にリソースとして格納されていること

.NET Framework のバージョン: 4

参照

参照

AssemblyComparisonResult 列挙型

Shfusion.dll (アセンブリ キャッシュ ビューアー)

CompareAssemblyIdentity 関数

その他の技術情報

Fusion グローバル静的関数

履歴の変更

日付

履歴

理由

2011 年 5 月

最初のドキュメントの誤りを訂正。

カスタマー フィードバック

2011 年 3 月

不足していた API に関するドキュメントを追加。

コンテンツ バグ修正