I came across an almost identical problem last week :) I'm guessing
it's because your merge module is defined as a subcomponent of a
64-bit folder
> <Directory Id="TARGETDIR" Name="SourceDir">
> <Directory Id="ProgramFiles64Folder">
> <Merge Id="wmm" Language="0" DiskId="1"
> SourceFile="$(var.WixMergeModule1.TargetPath)" />
> </Directory>
> </Directory>
Try this instead:
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFiles64Folder" />
<Merge Id="wmm" Language="0" DiskId="1"
SourceFile="$(var.WixMergeModule1.TargetPath)" />
</Directory>
Cheers,
Sascha
On Tue, Dec 15, 2009 at 12:16 AM, John Aldridge <[email protected]> wrote:
> I want to have an (x64) merge module which installs some 64 bit files to
> MergeRedirectFolder, and some 32 bit files to the 32 bit
> CommonFilesFolder. My (simplified) merge module wxs is...
>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
>> <Module Id="WixMergeModule1" Language="0" Version="1.0.0.0">
>> <Package Id="e2ff78a9-bb72-4a5f-a259-16a004f2bfdf"
>> Manufacturer="WixMergeModule1" InstallerVersion="200" />
>>
>> <Directory Id="TARGETDIR" Name="SourceDir">
>>
>> <Directory Id="MergeRedirectFolder">
>> <Component Id="isicor11.dll.64"
>> Guid="{7BA1C1B7-0E5D-4c0a-BE4E-B3F8F42C3FF8}" Win64="yes">
>> <File Id="isicor11.dll.64"
>> Source="e:\trunk\software\bin\Release.x64\isicor11.dll"/>
>> </Component>
>> </Directory>
>>
>> <Directory Id="CommonFilesFolder">
>> <Component Id="isicor11.dll.32"
>> Guid="{FFA0AA9D-7DB0-41fd-BE32-A2EF3482AA5D}" Win64="no">
>> <File Id="isicor11.dll.32"
>> Source="e:\trunk\software\bin\Release.Win32\isicor11.dll"/>
>> </Component>
>> </Directory>
>>
>> </Directory>
>> </Module>
>> </Wix>
>
> and the installer which uses it is
>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
>> <Product Id="51db34a7-d1e0-4926-9c95-593427344f21" Name="WixProject1"
>> Language="1033" Version="1.0.0.0" Manufacturer="WixProject1"
>> UpgradeCode="9ef11165-1ce4-4abe-9894-0c264f1a2387">
>> <Package InstallerVersion="200" Compressed="yes" />
>> <Media Id="1" Cabinet="media1.cab" EmbedCab="yes" />
>>
>> <Directory Id="TARGETDIR" Name="SourceDir">
>> <Directory Id="ProgramFiles64Folder">
>> <Merge Id="wmm" Language="0" DiskId="1"
>> SourceFile="$(var.WixMergeModule1.TargetPath)" />
>> </Directory>
>> </Directory>
>>
>> <Feature Id="ProductFeature" Title="WixProject1" Level="1">
>> <MergeRef Id="wmm" />
>> </Feature>
>> </Product>
>> </Wix>
>
> unfortunately this results in the error message
>
> light.exe(0,0): error LGHT0204: ICE80: This 32BitComponent
> isicor11.dll.32.E2FF78A9_BB72_4A5F_A259_16A004F2BFDF uses 64BitDirectory
> CommonFilesFolder.E2FF78A9_BB72_4A5F_A259_16A004F2BFDF
>
> Why does light think CommonFilesFolder is a 64 bit directory?
>
> How can I achieve what I want to do? (Yes, I know, use wixlibs, but I
> can't do that because I need to retain InstallShield compatibility).
>
> Thanks for any help!
>
> --
> Cheers,
> John
>
> ------------------------------------------------------------------------------
> Return on Information:
> Google Enterprise Search pays you back
> Get the facts.
> http://p.sf.net/sfu/google-dev2dev
> _______________________________________________
> WiX-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users