Я использую $(var.Platform)
, чтобы просто отобразить имя моего установщика, а затем либо "x64", либо "x86" в зависимости от системы, в которой он устанавливается. По какой-то причине $(var.Platform)
отображается как "x86" на 64-битной машине. Кто-нибудь может объяснить почему? Или предоставить лучший способ проверить, какую архитектуру ОС использует система?
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension">
<Bundle Name="title $(var.Platform)" Version="1.0.0.0" Manufacturer="redacted" UpgradeCode="84884025-3ff1-4d8e-9fcc-385119a8a132">
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense">
<bal:WixStandardBootstrapperApplication LicenseFile="licence.rtf"
SuppressOptionsUI="yes"/>
</BootstrapperApplicationRef>
<Chain>
<!-- TODO: Define the list of chained packages. -->
<!-- <MsiPackage SourceFile="path\to\your.msi" /> -->
<MsiPackage Id="redactedx64" InstallCondition="VersionNT64" SourceFile="$(var.redacted-win10.Installer.TargetPath)"/>
<MsiPackage Id="redactedx86" InstallCondition="NOT VersionNT64" SourceFile="$(var.redacted-win10.Installer.TargetPath)"/>
</Chain>
</Bundle>
</Wix>