WIX Целевой файл устанавливается в [ProgramFilesFolder] двумя разными компонентами в системе LFN: это прерывает подсчет ссылок на компоненты

#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 .