Как проверить for.net фреймворк 4.7.1 с Wix 3.11
Я пытаюсь проверить версию .net с Wix 3.11 через условие. Это прекрасно работает до 4.5, как это:
<PropertyRef Id="NETFRAMEWORK45" />
<Condition Message="This application requires .NET Framework 4.5. Please install the .NET Framework then run this installer again.">
<![CDATA[Installed OR NETFRAMEWORK45]]>
</Condition>
Проверить что - либо выше 4.5, по-видимому, невозможно-по крайней мере, с этим механизмом. Как я могу это сделать?
1 ответ:
Этот метод (PropertyRef) является синтаксическим сахаром. Препроцессор NetFxExtension вводит реализацию во время компиляции. WiX в настоящее время отстает. Реализация, которую вы ищете, будет выглядеть примерно так:
<PropertyRef Id="NETFRAMEWORK45" /> <Condition Message="This application requires .NET Framework 4.7.1. Please install the .NET Framework then run this installer again."><![CDATA[Installed OR NETFRAMEWORK45>=#461308]]> </Condition>
Https://github.com/wixtoolset/issues/issues/5575
Update (hot33331): добавлено # перед номером 461308. Без этого у меня ничего не получалось.