Поделиться через


ICEM06

ICEM06 проверяет наличие недопустимых прямых ссылок на функции модуля.

IcE модуля слияния хранятся в CUB-файле модуля слияния с именем Mergemod.cub, а не в файле CUB, содержавом ICE, используемых для проверки пакета.

Результат

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.

Сочетание клавиш (частичная)

Клавиша Назначение
Ярлык1. GUID1 cmd.exe
Ярлык2. GUID1 [MyProp]
Ярлык3. GUID1 {00000000-0000-0000-0000-000000000000}

 

Таблица классов (частичная)

CLSID Контекст Компонент_ Функция_
GUID1 LocalServer32 Компонент1 {00000000-0000-0000-0000-000000000000}
GUID2 LocalServer32 Компонент 2 MyFeature

 

ICEM06 сообщает о первой ошибке, так как первая запись в таблице ярлыков содержит запись в поле Target, которая не является свойством или guid null. Модуль не может ссылаться на функцию напрямую. Сведения о функциях должны быть предоставлены пользователем модуля. Чтобы устранить эту ошибку, ссылки на функцию должны быть заменены пустым ИДЕНТИФИКАТОРом GUID.

ICEM06 сообщает о второй ошибке, так как вторая запись в таблице Class содержит запись в поле Feature, которая не является GUID null. Модуль не может ссылаться на функцию напрямую. Сведения о функциях должны быть предоставлены пользователем модуля. Чтобы устранить эту ошибку, ссылки на функцию должны быть заменены пустым ИДЕНТИФИКАТОРом GUID.

Справочник по ICE модуля слияния