Перемещение 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> элемент.

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