[wix-users] LGHT0001 : Exception of type 'System.OutOfMemoryException' was thrown

Andreas Janzen andreas.janzen at infoman.de
Mon Aug 31 23:46:55 PDT 2015

I'm trying to create a bundle for my installer. The bundle contains among other thing an msi package of a third-party product. In addition to msi file, this package includes a directory structure with about 11000 files. The directory structure must be stored in the same directory as the msi file at the moment of installation.

MsiPackage element looks like:
    <MsiPackage Id="3rd.Client" DisplayName="3rd-party product" SourceFile=".\3rd\Client_32.msi" Compressed="yes" >
      <PayloadGroupRef Id="3rd.Client.Payload" />

PayloadGroup element looks like (I've generated it with PowerShell):
        <PayloadGroup Id="3rd.Client.Payload ">
          <Payload SourceFile="<Payload-Directory>\<File-1>" Name="<Target-Directory>\<File-1>" />
          <Payload SourceFile="<Payload-Directory>\<File-2>" Name="<Target-Directory>\<File-2>" />
If I'm trying to build the project in Visual Studio, light.exe is running for >20 minutes and then crashes with LGHT0001: Exception of type 'System.OutOfMemoryException' was thrown

Exception Type: System.OutOfMemoryException

Stack Trace:
   at System.Collections.Generic.Dictionary`2.Resize(Int32 newSize, Boolean forceNewHashCodes)
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at System.Collections.ObjectModel.KeyedCollection`2.AddKey(TKey key, TItem item)
   at System.Collections.ObjectModel.KeyedCollection`2.InsertItem(Int32 index, TItem item)
   at System.Collections.ObjectModel.Collection`1.Add(T item)
   at Microsoft.Tools.WindowsInstallerXml.WixGroupingOrdering.Item.AddAfter(Item after, IMessageHandler messageHandler)
   at Microsoft.Tools.WindowsInstallerXml.WixGroupingOrdering.Item.AddAfter(ItemCollection items, IMessageHandler messageHandler)
   at Microsoft.Tools.WindowsInstallerXml.WixGroupingOrdering.Item.FlattenAfters(IMessageHandler messageHandler)
   at Microsoft.Tools.WindowsInstallerXml.WixGroupingOrdering.FlattenOrdering()
   at Microsoft.Tools.WindowsInstallerXml.WixGroupingOrdering.LoadFlattenOrderGroups()
   at Microsoft.Tools.WindowsInstallerXml.WixGroupingOrdering.FlattenAndRewriteGroups(String parentType, Boolean removeUsedRows)
   at Microsoft.Tools.WindowsInstallerXml.Linker.FlattenBundleTables(Output output)
   at Microsoft.Tools.WindowsInstallerXml.Linker.Link(SectionCollection sections, ArrayList transforms, OutputType expectedOutputType)
   at Microsoft.Tools.WindowsInstallerXml.Tools.Light.Run(String[] args)

Is my approach correct from conceptual point of view? What else could I do?

Thanks in advance.

Infoman AG
Meitnerstraße 10 | 70563 Stuttgart | Tel.: +49711679710 | http://www.infoman.de
Vorstand / Executive Board: Dr.-Ing. Rainer Bamberger (CEO), Dipl.-Ing. Michael Freudenberg (CTO), Stephan Göbel (CSO)
Aufsichtsratsvorsitzender / Chairman Of The Supervisory Board: Andrew White
Sitz der Gesellschaft / Place Of Business: Stuttgart
HRB / Entry In The Commercial Register: Amtsgericht Stuttgart, HRB 21228
Bankverbindung: BW-Bank, BLZ 600 501 01, Kto. 2 933 591, BIC: SOLADEST, IBAN: DE02 6005 0101 0002 9335 91

Diese Nachricht enthält vertrauliche Informationen. Sollten Sie nicht der beabsichtigte Empfänger dieser E-Mail sein, senden Sie bitte diese an den Absender zurück und löschen Sie die E-Mail aus Ihrem System.

This communication contains confidential information. If you are not the intended recipient please return this email to the sender and delete it from your records.

More information about the wix-users mailing list