ICE57

ICE57 проверяет, что отдельные компоненты не смешивают данные для каждого компьютера и пользователя. Это настраиваемое действие ICE проверяет записи реестра, файлы, пути к ключам каталогов и нерекламированные ярлыки.

Смешивание данных для каждого пользователя и компьютера в одном компоненте может привести к частичной установке компонента для некоторых пользователей в многопользовательской среде.

См. свойство ALLUSERS .

Результат

ICE57 отправляет ошибку, если обнаруживает какой-либо компонент, содержащий записи реестра для компьютера и пользователя, файлы, пути к ключам каталога или нерекламированные ярлыки.

Пример

ICE57 сообщает о следующих ошибках в приведенном примере.

Component 'Component1' has both per-user and per-machine 
    data with a per-machine KeyPath. 
 
WARNING: Component 'Component2' has both per-user and 
    per-machine data with an HKCU Registry KeyPath. 
 
Component 'Component3' has a registry entry that 
    can be either per-user or per-machine and a per-machine KeyPath. 
 
Component 'Component4' has both per-user data and 
    a keypath that can be either per-user or per-machine.

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

Компонент Directory Атрибуты KeyPath
Компонент1 КаталогA 0 FileA
Компонент 2 КаталогA 4 RegKeyB
Компонент 3 КаталогA 0 FileC
Компонент 4 КаталогA 4 RegKeyD

 

Таблица реестра (частичная)

Реестр Root Компонент_
RegKeyA 1 Компонент1
RegKeyB 1 Компонент 2
RegKeyC -1 Компонент 3
RegKeyD -1 Компонент 4

 

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

File Компонент_
FileA Компонент1
FileB Компонент 2
FileC Компонент 3
Подал Компонент 4

 

Таблица каталогов

Directory Directory_Parent DefaultDir
TARGETDIR SourceDir
КаталогA TARGETDIR КаталогA

 

Чтобы устранить ошибки, реорганизуйте приложение таким образом, чтобы каждый компонент содержал только ресурсы для каждого пользователя или компьютера, а не оба.

Первое сообщение об ошибке публикуется, так как Компонент 1 содержит FileA (для каждого компьютера) и раздел реестра HKCU RegKeyA (на пользователя).

Справочник по ICE