wix WixStdbaLicenseUrl在使用自定义主题时不隐藏许可证

Elr*_*ynn 2 wix burn

我用它来隐藏许可证对话

<WixVariable Id="WixStdbaLicenseUrl" Value=""/
Run Code Online (Sandbox Code Playgroud)

哪个有效,直到我介绍一个自定义主题使用

<WixVariable Id="WixStdbaThemeXml" Value="Resource\RtfTheme.xml" />
<WixVariable Id="WixStdbaThemeWxl" Value="Resource\RtfTheme.wxl" />
Run Code Online (Sandbox Code Playgroud)

我的主题只是内置RtfTheme的一个副本,经过微调.我改变了窗口大小,并删除了修复按钮.

当我这样做时,会显示许可证对话框(尽管文本为空).我希望对话保持隐藏.

为什么?怎么修?

这是我尝试过的几种变体之一:

<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense" >
    <bal:WixStandardBootstrapperApplication
            LicenseFile="..\..\Tools\Building\buildIncludes\LicenseAgreement-Memo.rtf"
      LogoFile="..\..\Tools\Building\buildIncludes\my.logo.png"
            SuppressOptionsUI="yes"
   />

</BootstrapperApplicationRef>
<!-- supress license display in boot strapper -->
<WixVariable Id="WixStdbaLicenseUrl" Value=""/>
<WixVariable Id="WixStdbaLicenseFile" Value=""/>
<!-- we are using a customized theme -->
<WixVariable Id="WixStdbaThemeXml" Value="Resource\RtfTheme.xml" />
<WixVariable Id="WixStdbaThemeWxl" Value="Resource\RtfTheme.wxl" />
Run Code Online (Sandbox Code Playgroud)

Rob*_*ing 6

基于RTF的许可主题主题默认情况下不提供隐藏RTF对话框的方法.您可以编辑主题以删除RTF许可证并自行接受复选框.

基于超链接的许可证主题确实提供了一种通过将bal:WixStandardBootstrapperApplication元素的LicenseUrl属性设置为隐藏许可证超链接和接受复选框的方法"".

所以,为了回答你的问题,我建议你做一些事情:

<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense">
  <bal:WixStandardBootstrapperApplication LicenseUrl=""
       LogoFile="="..\..\Tools\Building\buildIncludes\"
       ThemeFile="Resources\CustomHyperlinkBasedTheme.xml" />

  <Payload SourceFile="Resources\OtherStuffIfYouNeed.It" />
</BootstrapperApplicationRef>
<WixVariable Id="WixStdbaThemeWxl" Value="Resources\CustomHyperlinkBasedTheme.wxl" />
Run Code Online (Sandbox Code Playgroud)

重要的是将自定义主题基于超链接选项...或者只是自定义主题,使其没有您不想要的内容.:)