gpt4 book ai didi

WiX-如何允许用户更改 Bootstrap 上的安装位置

转载 作者:行者123 更新时间:2023-12-01 12:38:09 24 4
gpt4 key购买 nike

我需要允许用户更改安装位置。我已经尝试过此 question 中给出的解决方案

我需要将我的 wix msi 文件添加到我的 bootstrap 项目中。
下面是我的 msi 项目代码,

    <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />

<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<MediaTemplate />

<Feature Id="ProductFeature" Title="SetupProject1" Level="1">
<ComponentRef Id="ProductComponent" />
</Feature>
</Product>

<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir" src="[TARGETDIR]">
<Directory Id="INSTALLFOLDER" Name="SetupProject1">
<Component Id="ProductComponent" Guid="2ACAD378-270B-4B50-AAED-A234A6BB8276">
<File Name="$(var.WindowsFormsApplication2.TargetFileName)" Source="$(var.WindowsFormsApplication2.TargetPath)" />
</Component>
</Directory>
</Directory>
</Fragment>

<Fragment>
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
</ComponentGroup>
</Fragment>

下面是 bootstrap 代码,


<Variable Name="varInstallLocation" bal:Overridable="yes" />

<Chain>
<MsiPackage
Id="MyService"
Name="MyService"
SourceFile="..\SetupProject1\bin\Release\SetupProject1.msi"
DisplayInternalUI="yes"
EnableFeatureSelection="yes"
Compressed="yes"
Vital="yes" >
<MsiProperty Name="TARGETDIR" Value="[varInstallLocation]"/>
</MsiPackage>
</Chain>
</Bundle>

最佳答案

您使用的是标准 bootstrap 吗? RtfLicense 或 HyperlinkLicense?

如果您设置 SuppressOptionsUI="no"在 Wix 标准 boostrapper 中,这将显示一个选项按钮,允许用户手动修改安装位置。

<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense">
<bal:WixStandardBootstrapperApplication
SuppressOptionsUI="no"
/>
</BootstrapperApplicationRef>

然后,正如您提到在 MSI 包中设置 MSI 属性,这将被用户选择的位置覆盖。
<MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />

如果要设置默认安装位置,请将捆绑包中的变量设置为默认值。
<Variable Name="InstallFolder" Type="string" Value="[ProgramFilesFolder]Install"/>

关于WiX-如何允许用户更改 Bootstrap 上的安装位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27668820/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com