это может быть глупый вопрос, но я потратил несколько часов на тестирование различных возможностей и не нашел ответа.
У меня есть один стандартный модуль слияния, подготовленный в VS 2005 (вероятно, все в порядке, я подготовил стандартный проект установки VS 2005, включил модуль слияния, и он работал правильно)
Проект Wix (в основном по причинам графического интерфейса) позаботится об установке. Примеры кода (сокращено для краткости)
Справочная часть:
<Directory Id="INSTALLLOCATION" Name="sth">
<Merge Id='MyModule3' Language='1033' SourceFile='MergeModule.msm' DiskId='1' />
</Directory>
Функциональная часть:
<Feature Id="ProductFeature3" Title="Tit" Level="1" Description='Yeah' ConfigurableDirectory='INSTALLLOCATION' Display='expand'
AllowAdvertise='no'>
<MergeRef Id='MyModule3' />
<ComponentGroupRef Id="Product.Generated" />
</Feature>
После сборки проекта WIX он выдает такие ошибки, как:
ICE83: Действия MsiPublishAssemblies И MsiUnpublishAssemblies ДОЛЖНЫ присутствовать в таблице InstallExecuteSequence. ICE83: действие MsiPublishAssemblies ДОЛЖНО присутствовать в таблице AdvtExecuteSequence.
Я добавил строки:
<InstallExecuteSequence>
<Custom Action="PreventDowngrading"
After="FindRelatedProducts">NEWPRODUCTFOUND</Custom> //i suppose it doesnt influence nothing here
<MsiPublishAssemblies Sequence="1502" />
<MsiUnpublishAssemblies Sequence="1501" />
</InstallExecuteSequence>
И:
<AdvertiseExecuteSequence>
<MsiPublishAssemblies Sequence="1502" />
</AdvertiseExecuteSequence>
После этого процесс сборки не возвращает никаких ошибок, но, несмотря на установку функции (выбранной в списке функций), на жестком диске нет файлов функций. Я думаю, это может быть вызвано порядковыми номерами, но у меня нет идей, как их исправить, кто-нибудь может помочь?
Если потребуется дополнительная информация, я обязательно ее предоставлю.