У меня есть файл WiX, в котором я должен сравнить версию, чтобы проверить предварительные условия. Выражение выглядит примерно так:
<Publish (attributes...)>
<![CDATA[(VERSION<"7.0") OR (other expressions)]]>
</Publish>
До сих пор это работало нормально, так как номера основных версий перешли с 7 на 8 до 9. Сейчас мы переходим к версии 10, и сравнение строк не удается, так как «1» меньше, чем «7». Я бы хотел, чтобы "10.0"<"7.0"
оценил false
, поскольку я собираюсь сравнивать версии, но выражение оценивается как true
из-за происходящего сравнения строк.
Я проверил несколько ответов StackOverflow, а также документацию по WiX, но похоже, что операция сравнения версий отсутствует.
В идеале, в языке программирования, если бы не было механизма синтаксического анализа версии, я бы разбил строку на .
и преобразовал ее в целое число и сравнил соответствующие записи.
Какой подход я могу использовать для WiX?