Looks like the Merge Module doesn't pass validation and your install is
inheriting all those failures. You might try running smoke.exe on the MSM
before merging it into your MSI.
Some of the errors are pretty scary:
ICE27 is really a structural thing and could be very bad for your install. To
work around this, you might add the named actions to your
<InstallExecuteSequence> element to get the default sequence number. That way
the Merge Module will use the correct sequence number.
ICE77 looks like the custom action is scheduled incorrectly. I don't know
enough about that custom action to know what it might do to your install.
ICE99 this seems just wrong. Did you author that into your directory table or
did the Merge Module bring it in?
PS: Pretty unfortunate that you are picking up SelfReg from a merge module.
My experiences with installation have found SelfReg to have a high rate of
failures in the wild.
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Chris Mumford
Sent: Saturday, May 24, 2008 19:00
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Help with Flash merge module.
Hello again:
I'm looking for a little help integrating a merge module. I'm trying to
distribute the Adobe Flash player - and Adobe does distribute a merge module.
So I added a <Merge> tag inside a <Directory> and then added a <MergeRef> into
a <Feature> in my main installer.
Now I'm getting these errors:
"C:\Program Files (x86)\Windows Installer XML v3\bin\candle.exe" -ext
WixNetFxExtension -ext WixUIExtension Project.wxs
Microsoft (R) Windows Installer Xml Compiler version 3.0.4109.0
Copyright (C) Microsoft Corporation 2003. All rights reserved.
"C:\Program Files (x86)\Windows Installer XML v3\bin\light.exe" -ext
WixNetFxExtension -ext WixUIExtension Project.wixobj
Microsoft (R) Windows Installer Xml Linker version 3.0.4109.0
Copyright (C) Microsoft Corporation 2003. All rights reserved.
C:\chris\Project.wxs(139): warning LGHT1056: The Directory table contains a row
with primary key(s) 'CommonAppDataFolder' which cannot be merged from the merge
module '..\3rdparty\flashplayermergemodule.msm'. This is likely due to
collision of rows with the same primary key(s) (but other different values in
other columns) between the database and the merge module.
C:\chris\Project.wxs(139): warning LGHT1056: The Directory table contains a row
with primary key(s) 'SystemFolder' which cannot be merged from the merge module
'..\3rdparty\flashplayermergemodule.msm'. This is likely due to collision of
rows with the same primary key(s) (but other different values in other columns)
between the database and the merge module.
C:\chris\Project.wxs(139): warning LGHT1056: The Directory table contains a row
with primary key(s) 'ProgramFilesFolder' which cannot be merged from the merge
module '..\3rdparty\flashplayermergemodule.msm'. This is likely due to
collision of rows with the same primary key(s) (but other different values in
other columns) between the database and the merge module.
C:\chris\Project.wxs(139): warning LGHT1056: The Directory table contains a row
with primary key(s) 'ProgramMenuFolder' which cannot be merged from the merge
module '..\3rdparty\flashplayermergemodule.msm'. This is likely due to
collision of rows with the same primary key(s) (but other different values in
other columns) between the database and the merge module.
C:\chris\Project.wxs(127): warning LGHT1076: ICE09: Component: sys.log4net is a
non-permanent system component
C:\chris\Project.wxs(130): warning LGHT1076: ICE09: Component:
SystemCommonComponent is a non-permanent system component
C:\chris\Project.wxs(135): warning LGHT1076: ICE09: Component:
ScreensaverComponent is a non-permanent system component
light.exe : error LGHT0204: ICE27: 'SelfUnregModules' Action in
InstallExecuteSequence table in wrong place. Current: Selection, Correct:
Execution
light.exe : error LGHT0204: ICE27: Action: 'SelfUnregModules' in
InstallExecuteSequence table must come after the 'InstallValidate' action.
light.exe : error LGHT0204: ICE27: Action: 'SelfUnregModules' in
InstallExecuteSequence table must come after the 'InstallInitialize' action.
light.exe : error LGHT0204: ICE27: Action: 'InstallFiles' in
InstallExecuteSequence table must come before the 'SelfRegModules' action.
Current seq#: 4000. Dependent seq#: 2850.
light.exe : error LGHT0204: ICE27: 'ResolveSource' Action in InstallUISequence
table in wrong place. Current: Search, Correct: Costing
light.exe : error LGHT0204: ICE57: Component
'Flash.ocx.52442A12_0334_40E2_BC90_E3BE2AD2E349' has both per-user and
per-machine data with a per-machine KeyPath.
light.exe : error LGHT0204: ICE77: ISUnSelfRegisterFiles is a in-script custom
action. It must be sequenced in between the InstallInitialize action and the
InstallFinalize action in the InstallExecuteSequence table
light.exe : error LGHT0204: ICE99: The directory name: PrimaryVolumePath is the
same as one of the MSI Public Properties and can cause unforeseen side effects.
light.exe : error LGHT0204: ICE99: The directory name: WindowsVolume is the
same as one of the MSI Public Properties and can cause unforeseen side effects.
What confuses me here (aside from the error messages) is that I have to put the
<Merge> element inside of one of my <Directory> elements. I mean I have no idea
whatsoever what files this merge module installs, and what directories it puts
them in. So why must I nest my reference to it in one of my <Directory> tags?
thanks for any assistance - I'm SO confused.
-Chris
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users