Quantcast

LGHT0001 : Exception of type 'System.OutOfMemoryException' was thrown

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

LGHT0001 : Exception of type 'System.OutOfMemoryException' was thrown

eaiacc
This post has NOT been accepted by the mailing list yet.
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" />
    </MsiPackage>

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!
Loading...