mafis
mafis

Reputation: 1165

Wix 32 and 64 Bit Components within one 32 Bit MSI

I tried for several hours to create an 32-bit installer which integrated 32 Bit and 64 Bit Versions of an exe File. But it seems like the 64-Bit exe is never integrated into the installer.

It should be possible to integrate both versions within one installer or not? If both use the same paths and everything. I only want that based on a condition the 32-Bit or the 64-Bit Version is installed.

The wix file looks like this:

<?xml version="1.0" encoding="UTF-8"?>

<Product Id="0E69C1BC-D9CD-4886-83D6-6240AEDC4D4F" Name="!(loc.ApplicationName)" Language="!(loc.Language)" Version="$(var.VersionNumber)" Manufacturer="!(loc.ManufacturerFullName)" UpgradeCode="$(var.UpgradeCode)">
   …

  <Property Id="OFFICEVERSION">
    <RegistrySearch Id="OfficeVersion"
                    Root="HKCR"
                    Key="Outlook.Application\CurVer"
                  Type="raw" />
  </Property>

<Property Id="Office64" Value="no"/>

…

<Fragment>
    <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">

      <!-- 32-Bit -->
      <Component Id="ml.32" Guid="{8739FAD5-28ED-4F19-B25A-8CC05BA87174}"  >
        <File Source="$(var.ProjectDir)..\build\x86\ml.exe" Id="mlExe" KeyPath="yes"/>
         <Condition><![CDATA[NOT Office64]]></Condition>
      </Component>

      <!-- 64-Bit -->
      <Component Id="ml.64" Guid="{8B6345EE-689D-4E13-882D-CF5B4F97252A}" >
        <File Source="$(var.ProjectDir)..\build\x64\ml.exe" Id="mlExe64" KeyPath="yes" />
       <Condition><![CDATA[Office64]]></Condition>
      </Component>

      …

    </ComponentGroup>
</Fragment>

Anbody has an idea on that ?

Upvotes: 0

Views: 1213

Answers (1)

Bob Arnson
Bob Arnson

Reputation: 21886

32-bit packages do not support 64-bit components. To install 64-bit components, you must use a 64-bit package.

Upvotes: 1

Related Questions