ada*_*ack 11 wix bootstrapper wix3.6
我正在使用rtflicence标准引导程序在我的poject msi链接之前安装dotnet.
我注意到有一个"选项"按钮,显示安装位置对话框,允许用户更改默认安装目录.
我需要:
我读到可以将Burn变量从bootstrapper传递给msipackage,但是我还没有找到任何进一步的细节,并希望被指向正确的方向.
谢谢
lev*_*ius 21
要使用选项1,您必须滚动自己的BootstrapperApplication并从菜单中删除选项按钮.
方案二更容易实施.引导程序使用一个特殊的Burn变量来调用,InstallFolder
以获取和设置该视图上文本块中的内容,您可以在该Bundle
元素内部分配该内容.
<Variable Name="InstallFolder" Type="string" Value="[ProgramFilesFolder]"/>
Run Code Online (Sandbox Code Playgroud)
该常量ProgramFilesFolder
将在程序启动时设置该文本块的值,如果用户浏览到另一个目录,它将存储在同一个变量中.要将它传递给MSI,在链中传递InstallFolder
使用MsiProperty
标记(INSTALLLOCATION
是WiX项目中属性的名称).
<MsiPackage Vital="yes" DisplayName="Your Name" Id="MsiId" SourceFile="path/to/file.msi">
<MsiProperty Name="INSTALLLOCATION" Value="[InstallFolder]" />
</MsiPackage>
Run Code Online (Sandbox Code Playgroud)
Jac*_*cob 18
我刚刚发现了SuppressOptionsUI选项,它解决了你的选项1而没有滚动你自己的BootstrapperApplication:
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension">
<Bundle>
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense">
<bal:WixStandardBootstrapperApplication LicenseFile="..\eula.rtf" SuppressOptionsUI="yes"/>
</BootstrapperApplicationRef>
<Chain>
</Chain>
</Bundle>
</Wix>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5488 次 |
最近记录: |