Ошибка CNDL0199: элемент Wix имеет неверное пространство имен "http://schemas.microsoft.com/wix/2003/01/wi"

Я перенес свой проект WIX из V2 в V4, а затем изменил пространство имен в файлах.WXS

Я заменил ниже пространство имен

<Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">

с

<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">

После внесения изменений при запуске установщика сборки появляется следующая ошибка:

error CNDL0199 : The Wix element has an incorrect namespace of
'http://schemas.microsoft.com/wix/2003/01/wi'.  Please make the Wix element
look like the following: <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
E:\Code\EMR\Wix\src\EMR_Registry_entries.wx

Я заменил новое пространство имен, но оно не отражает. Как только я запускаю установщик сборки, он устанавливается со старым пространством имен. Я пробовал несколько раз, но это всегда установка старого пространства имен.

Пожалуйста, помогите мне решить проблему.

1 ответ

Решение

ОБНОВЛЕНИЕ: Вопрос, который возник из второго чтения вашего вопроса.

Контроль источника: " Once I run the build installer it is setting with the old namespace. "- Вы уверены, что процесс сборки не происходит автоматически? 1)check the WiX source out of your source control system? Или же 2) может быть, он делает некоторые XML manipulation via the automation script?


Версия WiX: вы уверены, что компилируете с WiX 4? Может быть, вы компилируете с WiX 2 или же WiX 3 неумышленно? Попробуйте жестко запрограммировать полный путь к двоичному файлу WiX в вашей системе сборки - если он у вас есть. Пожалуйста, ознакомьтесь с этим (Шон является разработчиком WiX): перенесите Wix Project до версии 4.0. Frankly I am not sure how well WiX handles multiple-version installations on the same box combined with migrated sources (бинарные файлы с одинаковыми именами разных версий - WiX 2, 3, 4 - применяются глобально через переменную PATH? Не уверен).

Visual Studio / Cmd.exe?: Компилируете ли вы с помощью Visual Studio или через командную строку? (Я не совсем уверен, что читаю ваш вопрос). Может быть, попробуйте через командную строку (внизу), если вы используете Visual Studio - или наоборот. Убедитесь, что вы используете правильные двоичные файлы WiX (другими словами WiX 4).

Связанные файлы? У меня нет WiX 2 источники для миграции, но мне интересно, если у вас есть несколько исходных файлов, которые связаны между собой. Было ли это возможно в WiX 2? Я не могу вспомнить В любом случае, я бы удостоверился, что вы обновили все исходные файлы WiX, которые извлекаются во время процесса сборки. Пожалуйста, внимательно прочитайте журнал. Может быть, попытаться скомпилировать их с Candle.exe непосредственно с помощью командной строки (cmd.exeвместо Visual Studio), чтобы увидеть, если файл компилируется нормально.

Исходные файлы?: Если это все еще не работает, пожалуйста, поместите исходный файл онлайн, чтобы мы могли взглянуть. Github.com например. Беглый взгляд на источник (настоящий Маккой) иногда имеет большое значение, а иногда и вовсе не помогает. Может быть, попробовать. Отредактированные источники просто прекрасны - даже поощряются. Пожалуйста, обратите пристальное внимание на конфиденциальные данные: как избежать случайного распространения конфиденциальной информации в моем MSI? (и это также относится к опубликованным исходным файлам - очевидно - не только к скомпилированному MSI и его вспомогательным файлам - таким как пакетные файлы шаблона установки без вывода сообщений).


В заключение: это стало много болтовни. Возможно сначала попытайтесь скомпилировать перенесенный источник WiX с правильными двоичными файлами WiX 4, чтобы определить, работает ли это или нет. Затем вернитесь назад, чтобы выяснить, что происходит в процессе сборки.

Другие вопросы по тегам