我创建了一个 WiX Bootstrapper 项目。当安装运行时,它会提供一份许可协议。
我想在没有这一步的情况下创建一个引导程序,因为我不希望它显示任何许可协议。有可能做到吗?如果是,如何?
假设您使用的是 WiX 标准引导程序应用程序,您当前的 BootstrapperApplicationRef 可能如下所示:
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" />
WixStandardBootstrapperApplication 具有文档中解释的三个变体。HyperlinkLicense 是最简单的。它在欢迎页面而不是许可证页面上有一个许可证链接。它允许您为许可证指定一个空 URL,在这种情况下它不会显示链接。例如,
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense">
<bal:WixStandardBootstrapperApplication
LicenseUrl=""
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension" />
</BootstrapperApplicationRef>
我使用自定义主题来摆脱许可协议步骤。您可以在此处查看有关如何执行此操作的简要概述。
采取的步骤:
下载 WiX 3.11 源代码,您可以在页面底部的此处下载。
将其解压缩到一个文件夹中,然后添加HyperlinkTheme.xml
到HyperlinkTheme.wxl
您的引导程序项目中。这些文件可以在\src\ext\BalExtension\wixstdba\Resources
相对于它们被提取的位置找到。
将 BalExtension 命名空间定义添加到包文件中的 Wix 元素:
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension">
将您的引导程序定义修改为如下所示:
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense">
<bal:WixStandardBootstrapperApplication
LicenseUrl=""
ThemeFile="HyperlinkTheme.xml"
LocalizationFile="HyperlinkTheme.wxl"
SuppressOptionsUI="yes" />
</BootstrapperApplicationRef>
现在打开主题文件并将页面名称属性设置为Install
并注释掉或删除复选框和超链接:
<Page Name="Install">
<!--<Hypertext Name="EulaHyperlink" X="11" Y="121" Width="-11" Height="51" TabStop="yes" FontId="3" HideWhenDisabled="yes">#(loc.InstallLicenseLinkText)</Hypertext>
<Checkbox Name="EulaAcceptCheckbox" X="-11" Y="-41" Width="260" Height="17" TabStop="yes" FontId="3" HideWhenDisabled="yes">#(loc.InstallAcceptCheckbox)</Checkbox>-->
<Button Name="OptionsButton" X="-171" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0" HideWhenDisabled="yes">#(loc.InstallOptionsButton)</Button>
<Button Name="InstallButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.InstallInstallButton)</Button>
<Button Name="WelcomeCancelButton" X="-11" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.InstallCloseButton)</Button>
</Page>
之后,您的引导程序现在应该如下所示:
我个人会更多地改变主题,这样所有的空白空间看起来都不会那么尴尬。