Почему моя переменная времени привязки перестала работать после миграции с WiX v3 на v4?
Дан следующий комплект:
<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal"
xmlns:fire="http://wixtoolset.org/schemas/v4/wxs/firewall"
xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
<Bundle Name="!(bind.packageName.Setup)"
Version="!(bind.packageVersion.Setup)"
Manufacturer="!(bind.packageManufacturer.Setup)"
UpgradeCode="$(var.UpgradeCode)">
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense">
<bal:WixStandardBootstrapperApplication LicenseUrl=""
SuppressOptionsUI="no"
ShowVersion="yes"
SuppressRepair="yes" />
</BootstrapperApplicationRef>
<Chain>
<MsiPackage Id="Setup"
Compressed="yes"
Name="$(var.ProductName)"
SourceFile="foo.exe"
DisplayInternalUI="yes"
Vital="yes" />
</Chain>
</Bundle>
</Wix>
С v3 у меня не было проблем со сборкой Boostrapper, с недавним выпуском v4 (4.0.2926.0) я получаю следующую ошибку:
4> Bootstrapper \ Bundle.wxs (14,0): ошибка LGHT0298: неразрешенная переменная времени привязки!(Bind.packageVersion.Setup).
4> light.exe (0,0): ошибка LGHT0001: входная строка была в неправильном формате.
4> Закончен строительный проект "Bootstrapper.wixproj" - СБОЙ.
1 ответ
Решение
Это, вероятно, ошибка в WiX v4. WiX v4.0 все еще находится в активной разработке и является пре-бета-версией. Пожалуйста, отправьте сообщение об ошибке по адресу http://wixtoolset.org/issues/ чтобы мы не потеряли его.