Перемещение Wix <UI> в другой файл
Я пытаюсь разделить мой файл wix на два отдельных файла. Со всем, что существует под моим <UI> </UI>
тег, живущий в этом вторичном файле.
Я немного погуглил, но, похоже, не получаю каких-либо убедительных результатов.
Кто-нибудь сделал это успешно?
2 ответа
Решение
В вашем проекте Wix добавьте ссылку на WixUIExtension
В ваш Product.wxs (основной установочный файл) добавьте такую строку
<UIRef Id="UserInterface"/>
Добавьте UserInterface.wxs в свое проектное решение и настройте пользовательский интерфейс MSI:
<TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />
<TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="9" Bold="yes" />
<TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" />
<Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />
<DialogRef Id="ProgressDlg" />
<DialogRef Id="ErrorDlg" />
<DialogRef Id="FilesInUse" />
<DialogRef Id="FatalError" />
<DialogRef Id="UserExit" />
<DialogRef Id="InstallDirDlg"/>
<DialogRef Id="FeaturesDlg" />
<Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="FeaturesDlg" Order="2"></Publish>
<Publish Dialog="FeaturesDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish>
<Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="FeaturesDlg">1</Publish>
<Publish Dialog="InstallDirDlg" Control="ChangeFolder" Property="_BrowseProperty" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish>
<Publish Dialog="InstallDirDlg" Control="ChangeFolder" Event="SpawnDialog" Value="BrowseDlg" Order="2">1</Publish>
<Publish Dialog="InstallDirDlg" Control="Next" Event="SetTargetPath" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish>
<Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="ExitDialog" Order="2">1</Publish>
<Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>
</UI>
<UIRef Id="WixUI_Common" />
Полный образец этого кода можно найти в этом ответе
Посмотрите на эту ссылку, объясняет, как создавать собственные диалоги
Удачи!
Вы можете переместить <UI>
Элемент с его содержимым в отдельный файл легко. Просто не забудьте сослаться на него из основного Product.wxs
с <UIRef>
элемент.