Подтвердить что ты не робот

Wix installer ice03 Неверный идентификатор языка

У меня есть ночная сборка, которая работает на другой машине, а затем моя на моей машине я могу скомпилировать установщик и использовать msi без проблем
однако на ночной машине я получаю

C:\Builds\73\Tools\AppInstaller\src\AppInstaller\APPExportReleaseDir.wxs(693): ICE03: неверный идентификатор языка; Таблица: Файл, столбец: язык, ключ (ы): filAAED19CB2C0BBE304CDB8EB1AAF7473F

Файл, который показывает, что это system.windows.interactivity.xml

Не могли бы вы объяснить, что такое ошибки ICE03 и как я могу это исправить?

Здесь говорится, чтобы удалить язык или установить его в "0", http://softwarepackaging.co.uk/iceerrors, но объяснений нет.

4b9b3361

Ответ 1

Вам действительно нужно включить этот файл в MSI? Обычно файлы xml с именем сборки полезны разработчикам как документация SDK и не принадлежат к отгруженному продукту.

В этом отношении вы даже создали wxs или используете ли вы какую-либо форму динамического авторинга во время сборки? Если да, добавьте это в мой список причин, почему это анти-шаблон. (Не волнуйся, почти никто не хочет мне верить.)

Для получения дополнительной информации о ICE (в основном модульные тесты) см.

Совет MSI: создание ICE с использованием С#/DTF

Ответ 2

Правила ICE Оценщики внутренней согласованности - по существу серия сценарии самодиагностики проверка ссылочной целостности базы данных, согласованность базы данных, соответствие типа данных и схемы, а также запуск нескольких тестов проверки содержимого или логических тестов во всем MSI (который действительно является MS -SQL-база данных).

Другими словами, вы проверяете содержимое базы данных на схему базы данных и ряд правил проверки содержимого и определяете, объективно ли база данных содержит то, что она должна, и что она подключена корректно.

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

Проверки записываются как пользовательские действия (в основном механизм MSI для запуска исполняемой, настраиваемой логики установки во время установки), а также для проверки и оценки базы данных во время прогона проверки. Инструмент Windows SDK Orca способен выполнять проверку на любом MSI файле, как показано на этом рисунке:

enter image description here

Ваше конкретное сообщение об ошибке относится к ICE03:

Недопустимый идентификатор языка. База данных содержит недопустимый числовой идентификатор языка (LANGID). См. Тип данных языка. См. Константы и строки идентификатора языка. Например, 1033 для U.S. и 0 для нейтрального языка.

В вашем случае вам нужно полностью удалить спецификатор языка, если файл является нейтральным языком или исправить исходный файл Wix, чтобы установить соответствующий языковой код. Вот пример из файла MSI, устанавливающего Orca (1033 - английский, большинство файлов не указано, что означает, что они являются нейтральными для языка):

enter image description here