次の方法で共有


ICEM02

ICEM02 は、すべてのモジュールの依存関係と除外が現在のモジュールに関連付けられていることを確認します。

マージ モジュールの ICEs は、パッケージ検証に使用される ICEs を含む .cub ファイルではなく、Mergemod.cub という名前のマージ モジュール .cub ファイルに格納されます。

結果

ICEM02 は、モジュール データベースが現在のモジュールに関連しない依存関係または除外を指定しようとすると、エラー メッセージを投稿します。 ICEM02 は、モジュール データベースが現在のモジュールを依存モジュールとして指定しようとした場合、または単体で除外されたモジュールとして指定しようとすると、エラー メッセージを投稿します。

ICEM02 は、次に示すデータベース エントリを含むモジュールに対して、次のエラー メッセージを投稿します。

The dependency OtherModule.GUID2.1033.OtherModule.GUID3.0 in the 
ModuleDependency table creates a dependency for an unrelated module. A 
module can only define dependencies for itself

This module is listed as depending on itself!

The exclusion OtherModule.GUID2.1033.OtherModule.GUID3.0 in the 
ModuleExclusion table creates an excluded module for an unrelated 
module. A module can only define exclusions for itself.

This module excludes itself from the target database!

ModuleSignature テーブルの

ModuleID 言語 バージョン
MyModule。GUID1 1033 1.0

 

moduleDependency テーブル

ModuleID ModuleLanguage RequiredID RequiredLanguage RequiredVersion
OtherModule。GUID2 1033 OtherModule。GUID3 0 1.0
MyModule。GUID1 1033 MyModule。GUID1 1033 1.2

 

ModuleExclusion テーブル (部分)

ModuleID ModuleLanguage ExcludedID ExcludedLanguage
OtherModule。GUID2 1033 OtherModule。GUID3 0
MyModule。GUID1 1033 MyModule。GUID1 1033

 

マージ モジュール ICE は、ModuleDependency テーブルの最初の行が ModuleSignature テーブルで指定されている現在のモジュールに必要な依存関係を指定していないため、最初のエラーを投稿します。 モジュールの依存関係は、独自の ModuleDependency テーブルでのみ指定できます。 OtherModule の場合。現在のモジュールで GUID3が必要な は、行の最初の 2 つの列を ModuleSignature テーブルのデータに置き換えます。 OtherModule の場合。このモジュールで GUID3が不要な は、この行を削除します。

マージ モジュール ICE は、モジュール自体に依存関係を指定できないため、2 番目のエラーをポストします。

マージ モジュール ICE は、ModuleExclusion テーブルの最初の行が ModuleSignature テーブルで指定されている現在のモジュールに対して必要な除外を指定していないため、3 番目のエラーをポストします。 モジュールの除外は、独自の ModuleExclusion テーブルでのみ指定できます。 現在のモジュールで OtherModule が除外されている場合。GUID3、行の最初の 2 つの列を ModuleSignature テーブルのデータに置き換えます。 現在のモジュールが OtherModule を除外しない場合。GUID3、この行を削除します。

マージ モジュール ICE は、モジュールが自身を除外することを指定できないため、4 番目のエラーをポストします。

マージ モジュール ICE リファレンス