Thanks for the heads-up but that's not a crash - it's actually an ICE
warning (you can tell because it says "ICE03" in front).  When WiX crashes,
it will display a stack trace so that we can diagnose and fix the problem.

The problem you've encountered is that MSI identifiers are supposed to be 72
characters long or less.  When the modularization guid and added (this only
happens in merge modules), it's much easier to go over this limit because
you're effectively limited to ~36 characters (I forget exactly how many).
Basically you can only use half of the 72 which are available.

This brings up a common question - why is the limit 72 characters?  The
answer is that at the time MSI was first created, it was very important to
keep the size of strings in the MSI down to a minimum since installations
were being packed onto floppy disks.  Nowadays, the limitation seems
unnecessary but there are still two good reasons to follow them:
1. Keeping identifiers under 72 characters long ensures that they are
relatively succinct.
2. If you ship a merge module to another group that does follow the
72-character limit and your merge module does not, you will break validation
for them (which is not very nice).  In practice, the Visual Studio group
does this all the time and they've gotten a ton of negative feedback about
the practice.  So please be a good citizen when creating merge modules.

Derek

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of neil corcoran
Sent: Tuesday, August 08, 2006 12:26 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] heat and component identifier length

Hi,

I've been running heat on some directories to try to generate merge modules.
Everything has been going well until one directory which has files with long
file names gets processed by light. light.exe crashes because of this.
The component
tmp.wxs(3482) : warning LGHT1076 : ICE03: String overflow (greater than
length permitted in column); Table: Component, Column: Component,
Key(s):
apifnsm_adjust_agc_module_params.html.E2904247_E12E_4BA8_9815_E506E96D53DA

The component value is 74 characters long. I believe from reading on the
platformsdk.msi usenet group that 72 is the limit.

I can probably get my script to adjust the strings to avoid the problem, but
you might like to know about the crash.

Apart from that heat looks like a useful and powerful tool. Thanks.

Neil

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job
easier Download IBM WebSphere Application Server v.1.0.1 based on Apache
Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to