Components in merge modules have the package GUID appended to the component
ID so there isn't a clash if the same component ID is used in multiple merge
modules, and no clash between the merge modules and the main installer. It's
a way to make the component ID unique. The same happens for a number of
other IDs (e.g. property names).

 

This means that you have to constrain your IDs to a shorter length than you
would for the main installer. The GUID is 36 characters long so that gives
you 35 characters for the component ID.

 

It's the tool that generates the merge module which appends the package
GUID, so you can often turn the feature off. In WiX that is done with the
SuppressModularization attribute. However, this practice is not generally
recommended due to the name clash problem.

 

-- 

Mike Dimmick

 

  _____  

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Collins, James
Sent: 18 July 2007 20:07
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] heat.exe 9000+ Files Merge Module, warning LGHT1076

 

Hey all,

 

            I was wondering if someone can help me with this issue. I'm
creating a very large merge module 9000+ files, everything looks fine except
when I try to include the MSM in wise which suggests there are problems with
directory and component tables (yes fantastic error reporting from wise).
BTW I'm unable to search the mail archive on sourceforge so please excuse me
if this topic has already been covered. :-)

 

 

            Doing a verbose output on light.exe when I create the merge
module gives me a bunch of warnings that look like...

 

 

C:\temp\testing123.wxs(45240) : warning LGHT1076 : ICE03: String overflow
(greater than length permitted in column); Table: File, Column: Component_,
Key(s):
paneTabContainerExpandedBottom.gif_6.ECE25F21_7C22_4B3F_93EC_FA1EDBA5FB25

 

            It seems to be appending the packageID to the end of the
Component key? I assume that's standard practice. 

 

 <Package Id="ece25f21-7c22-4b3f-93ec-fa1edba5fb25" Compressed="yes"
InstallerVersion="200" Manufacturer="Blah" />

 

            This particular component looks like..

 

  <Fragment>

    <DirectoryRef Id="Img_105">

      <Component Id="paneTabContainerExpandedBottom.gif_6"
Guid="d8790233-d93e-41d7-905d-2d6bd2ab855f">

        <File Id="paneTabContainerExpandedBottom.gif_6"
Name="paneTabContainerExpandedBottom.gif" KeyPath="yes"
Source="c:\temp\source\Splitter\Skins\Vista\Img\paneTabContainerExpandedBott
om.gif" />

      </Component>

    </DirectoryRef>

  </Fragment>

 

            I think this is the root of the problem, I'm using heat.exe to
generate the XML. Does anyone have any suggestions? Is there a limit for the
component name? How do I get heat.exe to respect a component name size limit
if there is one?

 

Thanks in advance

 

Jimbo 

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to