在 Wix Burn Bundle 级别显示 MSI 版本部件(在标题/说明中显示)
Displaying MSI version parts at the Wix Burn Bundle level (to display in title / caption)
我发现了如何访问 MSI/Product 标签内的部分。但我的目标是根据 Major/Minor 版本号设置刻录安装程序的标题。
下面的这段代码是我尝试做的事情的总结,但这不起作用(我想是因为我不在产品标签中)。
刻录 wxs:
<Wix>
<Bundle Version="!(bind.packageVersion.<packageName>)" >
<Variable Name="ProductVersionMajor" Value="!(bind.property.ProductVersion.Major)"/>
<Variable Name="ProductVersionMinor" Value="!(bind.property.ProductVersion.Minor)"/>
....
Theme.wxl:
<WixLocalization ...>
<String Id="Caption">[WixBundleName] [ProductVersionMajor].[ProductVersionMinor] Setup</String>
....
是否有某种解决方法可以在不编写自定义代码的情况下在包级别获取此信息?
This answer here 很有用,但不是我所需要的;因为我不在内部 MSI 的 WIX 产品标签中。
!(bind.property.ProductVersion.Major)
是构建 MSI 时的绑定变量,而不是捆绑包。可用的绑定变量记录在 https://wixtoolset.org/documentation/manual/v3/overview/light.html. There is an open feature request for MsiPackage property bind variables at https://github.com/wixtoolset/issues/issues/4298。使 ProductVersion.Whatever
部分正常工作可能需要额外的工作,因此如果您需要,则应该对该问题添加评论。
我发现了如何访问 MSI/Product 标签内的部分。但我的目标是根据 Major/Minor 版本号设置刻录安装程序的标题。
下面的这段代码是我尝试做的事情的总结,但这不起作用(我想是因为我不在产品标签中)。
刻录 wxs:
<Wix>
<Bundle Version="!(bind.packageVersion.<packageName>)" >
<Variable Name="ProductVersionMajor" Value="!(bind.property.ProductVersion.Major)"/>
<Variable Name="ProductVersionMinor" Value="!(bind.property.ProductVersion.Minor)"/>
....
Theme.wxl:
<WixLocalization ...>
<String Id="Caption">[WixBundleName] [ProductVersionMajor].[ProductVersionMinor] Setup</String>
....
是否有某种解决方法可以在不编写自定义代码的情况下在包级别获取此信息?
This answer here 很有用,但不是我所需要的;因为我不在内部 MSI 的 WIX 产品标签中。
!(bind.property.ProductVersion.Major)
是构建 MSI 时的绑定变量,而不是捆绑包。可用的绑定变量记录在 https://wixtoolset.org/documentation/manual/v3/overview/light.html. There is an open feature request for MsiPackage property bind variables at https://github.com/wixtoolset/issues/issues/4298。使 ProductVersion.Whatever
部分正常工作可能需要额外的工作,因此如果您需要,则应该对该问题添加评论。