Я новичок в установке Wix Toolset. Я использую Wix 3.7 и Visual Studio 2010 SP1.
Я просматривал учебник, в котором используется BootStrapper, в котором есть условное сообщение в файле Product.Wxs для проверки установки .NET framework 4.0, есть переменная PropertyRef Id и сообщение об условии
<PropertyRef Id="NETFRAMEWORK40FULL"/>
<Condition Message="This application requires .NET Framework 4.0. Please install the .NET Framework then run
this installer again.">
<![CDATA[Installed OR NETFRAMEWORK40FULL]]>
</Condition>
Как можно аналогичным образом проверить состояние для выпусков Windows XP Starter / Home и Windows 7 Starter / Home / Home Premium и показать условное сообщение о том, что установка не поддерживает перечисленные ОС и требует профессиональных выпусков.
Я просмотрел ссылки на сайте Wixtoolset, но это не помогло:
Проверка версий Windows http://wixtoolset.org/documentation/manual/v3/howtos/redistributables%5fand%5finstall%5fchecks/block%5finstall%5fon%5fos.html
http://msdn.microsoft.com/library/aa370556.aspx
Я также попытался поместить условие в файл Bundle.wxs загрузчика как:
<Bundle Name="!(loc.ProductName)" Compressed="yes" Version="1.2.6.0"
SplashScreenSourceFile="Resources\SplashScreen.bmp" IconSourceFile="Resources\IXMWeb.ico" Manufacturer="!
(loc.ManufacturerName)" UpgradeCode="FED377E5-8762-48C4-B123-8D4AD89B0222" Condition="((VersionNT >= v5.1) AND
(ServicePackLevel >= 3) AND NOT(NTSuitePersonal)) OR ((VersionNT >= v5.2) AND (ServicePackLevel >= 2)) OR
(VersionNT >= v6.0 AND NOT(NTSuitePersonal))">
Я прочитал сообщение о том, что мне нужно использовать NTSuitePersonal вместо MsiNTSuitePersonal для проверки того, является ли устанавливаемая версия Домашней версией.
Пожалуйста, дайте мне знать, где я ошибаюсь в указанном выше условии.