9

在 WIX 中,我可以这样做来为我的 MSI 自动生成一个合适的版本号:

<?define ProductVersion="!(bind.FileVersion.MyMainExecutable)" ?>
<Product Version="$(var.ProductVersion)" ... />

这会产生一个像“1.0.1.0”这样的字符串,但我只想要前三个部分:“1.0.1”

我怎样才能做到这一点?

4

1 回答 1

12

没有办法只获取 bound 的前三个字段FileVersion。但是,如果您可以将四个部分的版本分配给Product/@Version(这是完全有效的,尽管主要升级只会查看前三个字段),那么您可以使用以下命令访问主要、次要、构建和修订的每个部分变量:

!(bind.property.ProductVersion.Major)
!(bind.property.ProductVersion.Minor)
!(bind.property.ProductVersion.Build)
!(bind.property.ProductVersion.Revision)

希望这会很有用。

于 2013-05-07T03:52:02.247 回答