WiX: недопустимый идентификатор языка

#installation #wix

#установка #wix

Вопрос:

У некоторых исполняемых файлов есть ресурсы, помеченные как «нейтральные к языку».

Возможно ли упаковать эти двоичные файлы с помощью WiX?

Ошибка, которую я получаю, такова: ошибка LGHT0204: ICE03: недопустимый идентификатор языка; Таблица: файл, столбец: язык, ключ (ы)

Настройка продукта.Значение атрибута Language ‘0’ не устраняет проблему.

Ответ №1:

Вы можете запретить извлечение информации о файле, передав эту опцию light.exe:

-sh
Подавить информацию о файле: не получить хэш, версию, язык и другие свойства файла

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

Ответ №2:

В качестве альтернативы, если вы убедитесь, что идентификатор языка действительно действителен (хотя я никогда не видел случая, когда ICE был неправильным), тогда я бы подавил ICE перед подавлением информации о хэше (-sh). Информация о хэше очень важна для вашей установки. Вместо этого используйте «light.exe -используйте ICE03», чтобы пропустить этот ICE.

Также обратите внимание, что проверки ICE03 довольно важны, поэтому убедитесь, что вы решили все остальные проблемы перед подавлением этого. Существует запрос функции для подавления только определенных ошибок вместо всего ICE.

Комментарии:

1. Есть ли способ определить язык как переменную в wix для использования в теге продукта?

2. У меня не работает препроцессор. потому что я объявляю переменную внутри тега product