ICEM06
ICEM06 は、モジュールによる機能の無効な直接参照をチェックします。
マージ モジュールの ICE は、パッケージ検証に使用される ICE を含む .cub ファイルではなく、Mergemod.cub というマージ モジュールの .cub ファイルに保存されます。
ICEM06 は、モジュール データベースに機能への直接参照が含まれているとエラーを報告します。 機能の情報は、モジュールのユーザーが提供する必要があります。
ICEM06 は、以下で示すようなデータベース エントリを含むモジュールに対して、次のエラー メッセージを報告します。
The target of shortcut Shortcut1.GUID1 is not a property and not a null GUID.
Modules may not directly reference features.
The row GUID2.LocalServer32.Component2 in the Class table has a feature reference
that is not a null GUID. Modules may not directly reference features.
Shortcut テーブル (一部)
ショートカット | 移行先 |
---|---|
Shortcut1.GUID1 | cmd.exe |
Shortcut2.GUID1 | [MyProp] |
Shortcut3.GUID1 | {00000000-0000-0000-0000-000000000000} |
Class テーブル (一部)
CLSID | Context | Component_ | Feature_ |
---|---|---|---|
GUID1 | LocalServer32 | Component1 | {00000000-0000-0000-0000-000000000000} |
GUID2 | LocalServer32 | Component2 | MyFeature |
ICEM06 が 1 つ目のエラーを報告するのは、Shortcut テーブルの 1 番目のレコードの Target フィールドに、プロパティまたは null GUID ではないエントリがあるためです。 モジュールで機能を直接参照することはできません。 機能の情報は、モジュールのユーザーが提供する必要があります。 このエラーを修正するには、機能への参照を null GUID に置き換える必要があります。
ICEM06 が 2 つ目のエラーを報告するのは、Class テーブルの 2 番目のレコードの Feature フィールドに、null GUID ではないエントリがあるためです。 モジュールで機能を直接参照することはできません。 機能の情報は、モジュールのユーザーが提供する必要があります。 このエラーを修正するには、機能への参照を null GUID に置き換える必要があります。