ICEM06
ICEM06 可检查模块对功能的无效直接引用。
合并模块 ICE 存储在名为 Mergemod.cub 的合并模块 .cub 文件中,而不是存储在包含用于包验证的 ICE 的 .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 | 上下文 | Component_ | Feature_ |
---|---|---|---|
GUID1 | LocalServer32 | Component1 | {00000000-0000-0000-0000-000000000000} |
GUID2 | LocalServer32 | Component2 | MyFeature |
ICEM06 因为 Shortcut 表中的第一条记录在“目标”字段中有一个不是属性或空 GUID 的条目,报告第一个错误。 模块不能直接引用功能。 模块的用户必须提供功能信息。 若要修复此错误,对功能的引用应替换为空 GUID。
ICEM06 因为 Class 表中的第二条记录在“功能”字段中有一个不是空 GUID 的条目,报告第二个错误。 模块不能直接引用功能。 模块的用户必须提供功能信息。 若要修复此错误,对功能的引用应替换为空 GUID。
相关主题