嗨我有一个带有我的产品版本信息init的C/C++头文件,如下所示:
#define nMajorVersion 4 #define nMinorVersion 4 #define nPointVersion 8 #define nBuildVersion 33 #define s_szFileVersion "4.4.8.33" #define s_szProductVersion "4.4.8.33"
有没有什么办法可以自动从这个文件中读取我的wix 3.6安装程序中的版本号?目前我已对其进行了硬编码,这对于发布时并不理想.谢谢
解决方法
你可以做的是创建一个c / c程序,生成一个文件Version.wxi,如下所示:
<?xml version="1.0" encoding="utf-8"?> <Include> <?define ProductVersion.Major="4"?> <?define ProductVersion.Minor="4"?> <?define ProductVersion.Revision="8"?> <?define ProductVersion.Build="33"?> <?define ProductVersion="4.4.8.33"?> .... </Include>
然后,您可以在主wxs文件中包含和使用这些版本号:
<?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <?include Version.wxi ?> <?define UpgradeCode="GUID"?> <Product Id="*" Name="$(var.ProductName) $(var.ProductVersion.Major).$(var.ProductVersion.Minor)" Version="$(var.ProductVersion)" Language="1033" Manufacturer="$(var.Company)" UpgradeCode="$(var.UpgradeCode)">