ICEM02
ICEM02 verifierar att alla modulberoenden och undantag är relaterade till den aktuella modulen.
Sammanslagningsmodulens ICE:er lagras i en .cub-fil för sammanslagningsmodulen med namnet Mergemod.cub och inte i .cub-filen som innehåller de ICEs som används för paketverifiering.
Resultat
ICEM02 skickar felmeddelanden om moduldatabasen försöker ange beroenden eller undantag som inte är relaterade till den aktuella modulen. ICEM02 skickar ett felmeddelande om moduldatabasen försöker ange den aktuella modulen som beroende eller exkluderad av sig själv.
Exempel
ICEM02 skulle publicera följande felmeddelanden för en modul som innehåller databasposterna som visas nedan.
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!
ModuleID | Språk | Version |
---|---|---|
MyModule.GUID1 | 1033 | 1.0 |
ModuleID | ModuleLanguage | RequiredID | RequiredLanguage | RequiredVersion |
---|---|---|---|---|
OtherModule.GUID2 | 1033 | OtherModule.GUID3 | 0 | 1.0 |
MyModule.GUID1 | 1033 | MyModule.GUID1 | 1033 | 1.2 |
ModuleExclusion Table (partiell)
ModuleID | ModuleLanguage | ExcludedID | ExcludedLanguage |
---|---|---|---|
OtherModule.GUID2 | 1033 | OtherModule.GUID3 | 0 |
MyModule.GUID1 | 1033 | MyModule.GUID1 | 1033 |
Sammanslagningsmodulen ICE publicerar det första felet på grund av den första raden i tabellen ModuleDependency, som inte anger något nödvändigt beroende för den aktuella modulen som anges i tabellen ModuleSignature. Beroenden för en modul kan bara anges i en egen ModuleDependency-tabell. Om OtherModule.GUID3- krävs av den aktuella modulen ersätter du de två första kolumnerna i raden med data från tabellen ModuleSignature. Om OtherModule.GUID3 inte krävs av den här modulen tar du bort den här raden.
Sammanslagningsmodulen ICE publicerar det andra felet eftersom en modul inte kan ange ett beroende på sig själv.
Sammanslagningsmodulen ICE publicerar det tredje felet på grund av den första raden i tabellen ModuleExclusion, som inte anger ett obligatoriskt undantag för den aktuella modulen som anges i tabellen ModuleSignature. Undantagen för en modul kan bara anges i en egen ModuleExclusion-tabell. Om den aktuella modulen exkluderar OtherModule.GUID3ersätter du de två första kolumnerna i raden med data från tabellen ModuleSignature. Om den aktuella modulen inte exkluderar OtherModule.GUID3tar du bort den här raden.
Sammanslagningsmodulen ICE publicerar det fjärde felet eftersom en modul inte kan ange att den utesluter sig själv.
Relaterade ämnen