#msbuild #wix #windows-installer
#msbuild #wix #windows-installer
Вопрос:
Я использую WIX для создания файла .msi через TFS / MSBuild. Ошибка, которая нарушает сборку (а не просто предупреждение), является:
ICE30: The target file 'eiycriw9.exe|MyApp.exe' is installed in '[ProgramFilesFolder]FolderMyAppFolder' by two different components on an LFN system: MyApp.exe and cmp497A0C7040B1E426AA3569D995A62AF2. This breaks component reference counting.
Эта ошибка дважды появляется в журнале сборки.
Я устанавливаю только одну версию программного обеспечения, и дубликатов файлов нет. Это одно приложение Windows с одним EXE-файлом.
Я проверил unique GUIDS
и несколько раз играл с несколькими настройками, но все равно безуспешно. Я даже откатил кучу вещей (файлы wix, шаблон процесса сборки), и я все равно получаю ту же ошибку, несмотря ни на что.
В <Directory Id=>
моем файле WinApp.wxs есть только один раздел.
Мне трудно найти информацию об этом, поскольку большинство людей, у которых возникают проблемы, имеют несколько версий одного и того же приложения в своих файлах wix. Мы этого не делаем.
Любая помощь, которую вы можете предоставить, была бы очень полезной.
Ответ №1:
Component1 и Component2 имеют файл с именем ‘READEME.1st’. При использовании коротких имен файлов программа установки устанавливает как Dir1, так и Dir2 в один и тот же каталог TARGETDIRPRODUCT . ICE30 генерирует две ошибки, по одной для каждого файла. В среде разработки, которая отображает местоположения ошибок, первая ошибка находится в записи одного файла в таблице файлов, а вторая — в местоположении другого файла.
—— поступает из https://msdn.microsoft.com/en-us/library/windows/desktop/aa368954(v=vs.85).aspx?f=255amp;MSPPError=-2147217396 У меня та же проблема, что и раньше, и я обнаружил, что использую неправильное значение в Source
under Component
.