LGHT0204 : ICE80 error

classic Classic list List threaded Threaded
5 messages Options
tsk
Reply | Threaded
Open this post in threaded view
|

LGHT0204 : ICE80 error

tsk
Hi,
I get LGHT0204 : ICE80 on the attached input on a 64 bit machine. Nevertheless the msi is created and works AFAICS.
Other solutions proposals to similar errors do not help here.

Any suggestions?

WIX 3.5.1002.0

Thomas

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Product Id="3A31C209-0F66-4C18-8FE2-C74864BB3678" UpgradeCode='0C61B1AD-BF64-4E76-AB05-098320E689CD' Name="Test 1.0.0.0" Language="1033" Version="1.0.0.0" Manufacturer="Me">
    <Package Id="*" Description="A description" Comments=" A comment" InstallerVersion="300" Compressed="yes" Platform="x64"/>

    <Media Id="1" Cabinet="Product.cab" EmbedCab="yes" />

    <Condition Message="You need to be an administrator to install this product."> Privileged </Condition>
    <Condition Message='Windows XP or Windows 2003 Server or newer'> VersionNT >= 501 OR Installed</Condition>

    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="ProgramFiles64Folder" Name="PFilFold">
        <Directory Id="X" Name="X">
          <Directory Id="INSTALLDIR" Name="Y">
            <Directory Id="bin" Name="bin"/>
          </Directory>
        </Directory>
      </Directory>
    </Directory>

    <DirectoryRef Id="bin">
      <Merge Id="VC90CRTModule" Language="1033" SourceFile="$(env.CommonProgramFiles)\Merge Modules\Microsoft_VC90_CRT_x86_x64.msm" DiskId='1' />
      <Merge Id="POLICY90VC90CRTModule" Language="1033" SourceFile="$(env.CommonProgramFiles)\Merge Modules\policy_9_0_Microsoft_VC90_CRT_x86_x64.msm" DiskId='1' />
      <Merge Id="VC90MFCModule" Language="1033" SourceFile="$(env.CommonProgramFiles)\Merge Modules\Microsoft_VC90_MFC_x86_x64.msm" DiskId='1' />
      <Merge Id="POLICY90VC90MFCModule" Language="1033" SourceFile="$(env.CommonProgramFiles)\Merge Modules\policy_9_0_Microsoft_VC90_MFC_x86_x64.msm" DiskId='1' />
    </DirectoryRef>

    <Feature Id="TheFeature" Title="The Title" Description='The description.' Display='expand' Level="1" ConfigurableDirectory='INSTALLDIR'>
      <Feature Id='TheSubFeature' Title='The other title' Description='The other description' Level='1'>
        <MergeRef Id='VC90CRTModule' />
        <MergeRef Id='POLICY90VC90CRTModule' />
        <MergeRef Id='VC90MFCModule' />
        <MergeRef Id='POLICY90VC90MFCModule' />
      </Feature>

    </Feature>

    <UIRef Id="WixUI_Mondo" />

    <Property Id='ALLUSERS'>All</Property>

    <Property Id='ARPCOMMENTS'>X</Property>
    <Property Id='ARPCONTACT'>X</Property>
    <Property Id='ARPURLUPDATEINFO'>X</Property>
    <Property Id='ARPHELPTELEPHONE'>123</Property>
 
  </Product>
</Wix>
Reply | Threaded
Open this post in threaded view
|

Re: LGHT0204 : ICE80 error

Blair Murri-3
Two questions:
1) What is the ICE80 message?
2) What is the commandline to candle?

-----Original Message-----
From: tsk [mailto:[hidden email]]
Sent: Monday, October 19, 2009 6:34 AM
To: [hidden email]
Subject: [WiX-users] LGHT0204 : ICE80 error


Hi,
I get LGHT0204 : ICE80 on the attached input on a 64 bit machine.
Nevertheless the msi is created and works AFAICS.
Other solutions proposals to similar errors do not help here.

Any suggestions?

WIX 3.5.1002.0

Thomas

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Product Id="3A31C209-0F66-4C18-8FE2-C74864BB3678"
UpgradeCode='0C61B1AD-BF64-4E76-AB05-098320E689CD' Name="Test 1.0.0.0"
Language="1033" Version="1.0.0.0" Manufacturer="Me">
    <Package Id="*" Description="A description" Comments=" A comment"
InstallerVersion="300" Compressed="yes" Platform="x64"/>

    <Media Id="1" Cabinet="Product.cab" EmbedCab="yes" />

    <Condition Message="You need to be an administrator to install this
product."> Privileged </Condition>
    <Condition Message='Windows XP or Windows 2003 Server or newer'>
VersionNT >= 501 OR Installed</Condition>

    <Directory Id="TARGETDIR" Name="SourceDir">
      <Directory Id="ProgramFiles64Folder" Name="PFilFold">
        <Directory Id="X" Name="X">
          <Directory Id="INSTALLDIR" Name="Y">
            <Directory Id="bin" Name="bin"/>
          </Directory>
        </Directory>
      </Directory>
    </Directory>

    <DirectoryRef Id="bin">
      <Merge Id="VC90CRTModule" Language="1033"
SourceFile="$(env.CommonProgramFiles)\Merge
Modules\Microsoft_VC90_CRT_x86_x64.msm" DiskId='1' />
      <Merge Id="POLICY90VC90CRTModule" Language="1033"
SourceFile="$(env.CommonProgramFiles)\Merge
Modules\policy_9_0_Microsoft_VC90_CRT_x86_x64.msm" DiskId='1' />
      <Merge Id="VC90MFCModule" Language="1033"
SourceFile="$(env.CommonProgramFiles)\Merge
Modules\Microsoft_VC90_MFC_x86_x64.msm" DiskId='1' />
      <Merge Id="POLICY90VC90MFCModule" Language="1033"
SourceFile="$(env.CommonProgramFiles)\Merge
Modules\policy_9_0_Microsoft_VC90_MFC_x86_x64.msm" DiskId='1' />
    </DirectoryRef>

    <Feature Id="TheFeature" Title="The Title" Description='The
description.' Display='expand' Level="1" ConfigurableDirectory='INSTALLDIR'>
      <Feature Id='TheSubFeature' Title='The other title' Description='The
other description' Level='1'>
        <MergeRef Id='VC90CRTModule' />
        <MergeRef Id='POLICY90VC90CRTModule' />
        <MergeRef Id='VC90MFCModule' />
        <MergeRef Id='POLICY90VC90MFCModule' />
      </Feature>

    </Feature>

    <UIRef Id="WixUI_Mondo" />

    <Property Id='ALLUSERS'>All</Property>

    <Property Id='ARPCOMMENTS'>X</Property>
    <Property Id='ARPCONTACT'>X</Property>
    <Property Id='ARPURLUPDATEINFO'>X</Property>
    <Property Id='ARPHELPTELEPHONE'>123</Property>
 
  </Product>
</Wix>

--
View this message in context:
http://n2.nabble.com/LGHT0204-ICE80-error-tp3849029p3849029.html
Sent from the wix-users mailing list archive at Nabble.com.

----------------------------------------------------------------------------
--
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
tsk
Reply | Threaded
Open this post in threaded view
|

Re: [WiX-users] LGHT0204 : ICE80 error

tsk
Blair-2 (via Nabble) schrieb:
> Two questions:
> 1) What is the ICE80 message?
> 2) What is the commandline to candle?
>

1) (wrapped...)
light.exe : error LGHT0204 : ICE80: This 32BitComponent
uplevel.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_1849E9DBC229
uses 64BitDirectory p
ayload_ul.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_1849E9DBC229
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_payload.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_1849E9DBC229
uses 64BitD
irectory
payload.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_1849E9DBC229
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_manifest.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_1849E9DBC229
uses 64Bit
Directory
WinSxsManifests.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_1849E9DBC229
light.exe : error LGHT0204 : ICE80: This 32BitComponent
uplevel.30729.4148.policy_9_0_Microsoft_VC90_CRT_x64.QFE.F88F7F82_F6E0_309C_981C_800644564D24
uses 64Bit
Directory
payload_ul.30729.4148.policy_9_0_Microsoft_VC90_CRT_x64.QFE.F88F7F82_F6E0_309C_981C_800644564D24
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_manifest.30729.4148.policy_9_0_Microsoft_VC90_CRT_x64.QFE.F88F7F82_F6E0_309C_981C_800644564D24
  uses 64BitDirectory
policydir.30729.4148.policy_9_0_Microsoft_VC90_CRT_x64.QFE.F88F7F82_F6E0_309C_981C_800644564D24
light.exe : error LGHT0204 : ICE80: This 32BitComponent
uplevel.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD1_BDA1F6098DD6
uses 64BitDirectory p
ayload_ul.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD1_BDA1F6098DD6
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_payload.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD1_BDA1F6098DD6
uses 64BitD
irectory
payload.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD1_BDA1F6098DD6
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_manifest.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD1_BDA1F6098DD6
uses 64Bit
Directory
WinSxsManifests.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD1_BDA1F6098DD6
light.exe : error LGHT0204 : ICE80: This 32BitComponent
uplevel.30729.4148.policy_9_0_Microsoft_VC90_MFC_x64.QFE.C8ECA3D5_581C_3816_B0A1_3556BB7418CE
uses 64Bit
Directory
payload_ul.30729.4148.policy_9_0_Microsoft_VC90_MFC_x64.QFE.C8ECA3D5_581C_3816_B0A1_3556BB7418CE
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_manifest.30729.4148.policy_9_0_Microsoft_VC90_MFC_x64.QFE.C8ECA3D5_581C_3816_B0A1_3556BB7418CE
  uses 64BitDirectory
policydir.30729.4148.policy_9_0_Microsoft_VC90_MFC_x64.QFE.C8ECA3D5_581C_3816_B0A1_3556BB7418CE


2)
Nothing fancy:
candle test.wxs
light.exe -sw1055 -sw1056 -sw1076 -out test.msi test.wixobj -ext
WixUIExtension

Thomas
Reply | Threaded
Open this post in threaded view
|

Re: LGHT0204 : ICE80 error

Blair Murri-3
The SxS Merge Modules from MSFT that I have used tend to have their own
fully-intact directory structures and don't use any of the packages
directory tree for anything.

If you look in the Microsoft_VC90_CRT_x86_x64.msm file's Directory table,
you will see that the only child directory of the required TARGETDIR
directory is
WindowsFolder.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_
1849E9DBC229 (in the version of that file on my hard drive), which will
(when added to my MSI via Mergemod.dll which light.exe uses) be set to use
the predefined variable "WindowsFolder". All other directories in the tree
descend from that WindowsFolder location.

Searching the entire MSM file for "TARGETDIR" further reveals that the only
place that directory is referenced is the Directory table. Thus, this MSM
doesn't make any use of the directory you pass to it via the Merge element's
parent.

What happens, though, with EVERY merge module, is that the merge module's
TARGETDIR directory, which must be the "root" of its directory tree, is the
directory you supply as the parent of the Merge element. As a result, the
payload_ul.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_184
9E9DBC229 directory will look to ICE80 as something akin to "C:\Program
Files\X\Y\bin\Windows\winsxs\amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.3
0729.4148_none_08e3747fa83e48bc", which is clearly a 64-bit directory, when
what the real result will be is
"C:\Windows\winsxs\amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.4148_
none_08e3747fa83e48bc", which 32-bit code can see without any redirections
going on, allowing the use of 32-bit components.

See this page for more details about Merge Module directory authoring:
http://msdn.microsoft.com/en-us/library/aa367787(VS.85).aspx


The "workaround" is to place the MSFT VisualStudio runtime library Merge
Modules under your MSI's "TARGETDIR" directory instead of somewhere under
its installation directory.

Thus:

    <DirectoryRef Id="TARGETDIR">
      <Merge Id="VC90CRTModule" Language="1033"
SourceFile="$(env.CommonProgramFiles)\Merge
Modules\Microsoft_VC90_CRT_x86_x64.msm" DiskId='1' />
      <Merge Id="POLICY90VC90CRTModule" Language="1033"
SourceFile="$(env.CommonProgramFiles)\Merge
Modules\policy_9_0_Microsoft_VC90_CRT_x86_x64.msm" DiskId='1' />
      <Merge Id="VC90MFCModule" Language="1033"
SourceFile="$(env.CommonProgramFiles)\Merge
Modules\Microsoft_VC90_MFC_x86_x64.msm" DiskId='1' />
      <Merge Id="POLICY90VC90MFCModule" Language="1033"
SourceFile="$(env.CommonProgramFiles)\Merge
Modules\policy_9_0_Microsoft_VC90_MFC_x86_x64.msm" DiskId='1' />
    </DirectoryRef>

Note that you have to look at each and every MSM to see what directory it
should be placed under, and every time you accept an updated MSM you should
re-examine its directory usages to ensure that no directories in the MSM
really depend on the location of TARGETDIR.

-----Original Message-----
From: tsk [mailto:[hidden email]]
Sent: Monday, October 19, 2009 7:26 AM
To: [hidden email]
Subject: Re: [WiX-users] LGHT0204 : ICE80 error


Blair-2 (via Nabble) schrieb:
> Two questions:
> 1) What is the ICE80 message?
> 2) What is the commandline to candle?
>

1) (wrapped...)
light.exe : error LGHT0204 : ICE80: This 32BitComponent
uplevel.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_1849E9
DBC229
uses 64BitDirectory p
ayload_ul.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_1849
E9DBC229
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_payload.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8
F48_1849E9DBC229
uses 64BitD
irectory
payload.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F48_1849E9
DBC229
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_manifest.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_
8F48_1849E9DBC229
uses 64Bit
Directory
WinSxsManifests.30729.4148.Microsoft_VC90_CRT_x64.QFE.DD7E30AD_4555_3131_8F4
8_1849E9DBC229
light.exe : error LGHT0204 : ICE80: This 32BitComponent
uplevel.30729.4148.policy_9_0_Microsoft_VC90_CRT_x64.QFE.F88F7F82_F6E0_309C_
981C_800644564D24
uses 64Bit
Directory
payload_ul.30729.4148.policy_9_0_Microsoft_VC90_CRT_x64.QFE.F88F7F82_F6E0_30
9C_981C_800644564D24
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_manifest.30729.4148.policy_9_0_Microsoft_VC90_CRT_x64.QFE.F88F7F82
_F6E0_309C_981C_800644564D24
  uses 64BitDirectory
policydir.30729.4148.policy_9_0_Microsoft_VC90_CRT_x64.QFE.F88F7F82_F6E0_309
C_981C_800644564D24
light.exe : error LGHT0204 : ICE80: This 32BitComponent
uplevel.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD1_BDA1F6
098DD6
uses 64BitDirectory p
ayload_ul.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD1_BDA1
F6098DD6
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_payload.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8
FD1_BDA1F6098DD6
uses 64BitD
irectory
payload.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD1_BDA1F6
098DD6
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_manifest.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_
8FD1_BDA1F6098DD6
uses 64Bit
Directory
WinSxsManifests.30729.4148.Microsoft_VC90_MFC_x64.QFE.1D1BABF3_B608_379B_8FD
1_BDA1F6098DD6
light.exe : error LGHT0204 : ICE80: This 32BitComponent
uplevel.30729.4148.policy_9_0_Microsoft_VC90_MFC_x64.QFE.C8ECA3D5_581C_3816_
B0A1_3556BB7418CE
uses 64Bit
Directory
payload_ul.30729.4148.policy_9_0_Microsoft_VC90_MFC_x64.QFE.C8ECA3D5_581C_38
16_B0A1_3556BB7418CE
light.exe : error LGHT0204 : ICE80: This 32BitComponent
downlevel_manifest.30729.4148.policy_9_0_Microsoft_VC90_MFC_x64.QFE.C8ECA3D5
_581C_3816_B0A1_3556BB7418CE
  uses 64BitDirectory
policydir.30729.4148.policy_9_0_Microsoft_VC90_MFC_x64.QFE.C8ECA3D5_581C_381
6_B0A1_3556BB7418CE


2)
Nothing fancy:
candle test.wxs
light.exe -sw1055 -sw1056 -sw1076 -out test.msi test.wixobj -ext
WixUIExtension

Thomas

--
View this message in context:
http://n2.nabble.com/LGHT0204-ICE80-error-tp3849029p3849352.html
Sent from the wix-users mailing list archive at Nabble.com.
----------------------------------------------------------------------------
--
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
tsk
Reply | Threaded
Open this post in threaded view
|

Re: LGHT0204 : ICE80 error

tsk
Blair schrieb:
> The SxS Merge Modules from MSFT that I have used tend to have their own
> fully-intact directory structures and don't use any of the packages
> directory tree for anything.
...

Pah! I'm impressed!
Thanks for your very helpful and exhaustive answer!

Thomas


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users