Error LGHT0204: When trying to install the Visual C++ Redistributable with Wix installer

1,464 views
Skip to first unread message

Rashmi

unread,
Nov 4, 2011, 12:49:45 PM11/4/11
to firebreath-dev
Hi,

I had not posted this to group before. May be I could get help.
I am able to generate a Wix project, which creates a basic MSI
installer that registers the plugin. Since my application depends on
Visual C++ runtimes, I am trying to include Visual C++ Redistributable
merge modules as part of my installer (http://wix.sourceforge.net/
manual-wix3/install_vcredist.htm)  and
I get the following error message. Let me know if I am missing
anything.

------ Build started: Project: ZERO_CHECK, Configuration: Release
Win32 ------
2>------ Build started: Project: PluginTest_WiXInstall, Configuration:
Release Win32 ------
2>  Compiling C:/Users/hellosoft/workspace_Plugin/working/build/bin/
PluginTest/Release/npPluginTest.dll -> npPluginTest.wxs
2>  Microsoft (R) Windows Installer Xml Toolset Harvester version
3.6.2109.0
2>  Copyright (C) Microsoft Corporation. All rights reserved.
2>
2>heat.exe : warning HEAT1108: The command line switch 't:' is
deprecated. Please use 't' instead.
2>  Compiling C:/Users/hellosoft/workspace_Plugin/working/build/
projects/PluginTest/PluginTestInstaller.wxs ->
PluginTestInstaller.wixobj
2>  Microsoft (R) Windows Installer Xml Compiler version 3.6.2109.0
2>  Copyright (C) Microsoft Corporation. All rights reserved.
2>
2>  PluginTestInstaller.wxs
2>  Compiling C:/Users/hellosoft/workspace_Plugin/working/build/
projects/PluginTest/npPluginTest.wxs -> npPluginTest.wixobj
2>  Microsoft (R) Windows Installer Xml Compiler version 3.6.2109.0
2>  Copyright (C) Microsoft Corporation. All rights reserved.
2>
2>  npPluginTest.wxs
2>  PluginTest_WiXInstall.vcxproj -> C:\Users\hellosoft
\workspace_Plugin\working\build\projects\PluginTest\Release
\PluginTest_WiXInstall.lib
2>  Microsoft (R) Windows Installer Xml Linker version 3.6.2109.0
2>  Copyright (C) Microsoft Corporation. All rights reserved.
2>
2>C:\Users\hellosoft\workspace_Plugin\working\build\projects\PluginTest
\PluginTestInstaller.wxs(45): warning LGHT1104: Merge module
'VCRedist' has an installer version of 300 which is greater than the
product's installer version of 200. Merging a module with a higher
installer version than the product it is being merged into can result
in invalid values in the resulting msi. You must set the Package/
@InstallerVersion attribute to 300 or greater to merge this merge
module into your product.
2>light.exe : error LGHT0204: ICE38: Component uplevel.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
installs to user profile. It must use a registry key under HKCU as its
KeyPath, not a file.
2>light.exe : error LGHT0204: ICE38: Component nosxs.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
installs to user profile. It's KeyPath registry key must fall under
HKCU.
2>light.exe : error LGHT0204: ICE38: Component downlevel_payload.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
installs to user profile. It's KeyPath registry key must fall under
HKCU.
2>light.exe : error LGHT0204: ICE38: Component downlevel_manifest.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
installs to user profile. It's KeyPath registry key must fall under
HKCU.
2>light.exe : error LGHT0204: ICE57: Component 'nosxs.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC'
has both per-user and per-machine data with a per-machine KeyPath.
2>light.exe : error LGHT0204: ICE57: Component 'downlevel_payload.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC'
has both per-user and per-machine data with a per-machine KeyPath.
2>light.exe : error LGHT0204: ICE57: Component 'downlevel_manifest.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC'
has both per-user and per-machine data with a per-machine KeyPath.
2>light.exe : error LGHT0204: ICE64: The directory WindowsFolder.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
is in the user profile but is not listed in the RemoveFile table.
2>light.exe : error LGHT0204: ICE64: The directory SystemFolder.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
is in the user profile but is not listed in the RemoveFile table.
2>light.exe : error LGHT0204: ICE64: The directory WinSxsDirectory.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
is in the user profile but is not listed in the RemoveFile table.
2>light.exe : error LGHT0204: ICE64: The directory payload_ul.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
is in the user profile but is not listed in the RemoveFile table.
2>light.exe : error LGHT0204: ICE64: The directory payload.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
is in the user profile but is not listed in the RemoveFile table.
2>light.exe : error LGHT0204: ICE64: The directory WinSxsManifests.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
is in the user profile but is not listed in the RemoveFile table.
2>light.exe : error LGHT0204: ICE64: The directory WinSxsPolicies.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
is in the user profile but is not listed in the RemoveFile table.
2>light.exe : error LGHT0204: ICE64: The directory policydir.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
is in the user profile but is not listed in the RemoveFile table.
2>light.exe : error LGHT0204: ICE64: The directory policydir_ul.
30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC
is in the user profile but is not listed in the RemoveFile table.
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: The command
"setlocal
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: "C:\Program
Files (x86)\Windows Installer XML v3.6\bin\light.exe" -sw1076 -ext
WixUtilExtension -ext WixUIExtension -out C:/Users/hellosoft/
workspace_Plugin/working/build/bin/PluginTest/Release//PluginTest.msi
C:/Users/hellosoft/workspace_Plugin/working/build/projects/PluginTest/
PluginTestInstaller.wixobj C:/Users/hellosoft/workspace_Plugin/working/
build/projects/PluginTest/npPluginTest.wixobj
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: if %errorlevel
% neq 0 goto :cmEnd
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: :cmEnd
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: endlocal &
call :cmErrorLevel %errorlevel% & goto :cmDone
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: :cmErrorLevel
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: exit /b %1
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: :cmDone
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: if %errorlevel
% neq 0 goto :VCEnd
2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp
\v4.0\Microsoft.CppCommon.targets(113,5): error MSB3073: :VCEnd"
exited with code 204.
========== Build: 1 succeeded, 1 failed, 8 up-to-date, 0 skipped
==========

Richard Bateman

unread,
Dec 1, 2011, 3:58:24 PM12/1/11
to firebre...@googlegroups.com

Better late than never, I suppose... I periodically go back and check to see if I've missed any posts or questions but I sometimes don't do it often enough.

The relevant error is:

> light.exe : error LGHT0204: ICE57: Component 'nosxs.
> 30729.01.Microsoft_VC90_CRT_x86.SP.D8D85FD0_537C_3A3A_9BEC_7A1B426637EC'
> has both per-user and per-machine data with a per-machine KeyPath.

In other words, the component in question has a KeyPath that is installed in a per-machine location, but it has components that would be installed Per-user; that doesn't make any sense, because it would result in a component that looks like it is installed per-machine but is only fully installed to the user that was logged in when the installer was run.

You need to make everything per-machine or everything per-user; none of this half and half stuff.

Richard

Reply all
Reply to author
Forward
0 new messages