LIGHT fails to create a .msm file for a Merge Module that contains assemblies of type "win32" which use a manifest in a separate file.
I debugged the sources. The cause is that the AssemblyManifest attribute value does not get "modularized" (=extended with the Component Guid for the sake of uniqueness), but the File Id value IS modularized. So the File record for the assembly manifest cannot be found because the "unmodularized" assembly name is not contained in the internal Hashtable.
I could solve this by changing the meta data for the "WixFile" table in tables.xml. I changed the value of the "modularize" attribute to "column" for the "File_AssemblyManifest" column. Don't know what other side effects this might have, but it helped me out.
We'd need a quick official fix (i. e. signed binaries) for this. Would be happy if someone could integrate this for the next weekly release. Please find my modified tables.xml file attached (based on 3.0.4207.0).
Note: The generated .msm file is still not completely "clean". Some ICEs fail. Only can get it to work when disabling ICE03, ICE08, and ICE32 (through the -sice command line switches). Otherwise LIGHT.exe crashes (Exception). But that is a different story.
Thanks,
Chris
Modified tables.xml file
Logged In: YES
user_id=991639
Originator: NO
Indeed.
This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 15 days (the time period specified by
the administrator of this Tracker).