Menu

#1241 Linking of merge modules for win32 assemblies failed

v3.0
closed
light (353)
2012-09-15
2008-06-12
No

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

Discussion

  • Christian Andritzky

    Modified tables.xml file

     
  • Rob Mensching

    Rob Mensching - 2008-06-13

    Logged In: YES
    user_id=991639
    Originator: NO

    Indeed.

     
  • SourceForge Robot

    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).

     
MongoDB Logo MongoDB