Hi everyone,
I'm having trouble with Light.exe. I installed the January 11 build (3.0.3711)
and things work very well except that I can only build the Setup project once
for every time I start Visual Studio. When I build the first time after I start
Visual Studio 2008, everything is OK, but all builds after that fail with
"Light.exe exited with code 1". If I restart Visual Studio I can build once
again. I can live with that, cause all I have to do is copy the light.exe
commandline that Visual Studio shows in the output into a commandprompt and it
works.
The problem though is that this also happens with Team Build (TFS) when I build
both release and debug versions of the product. The first (usually Release)
builds fine, but the second fails. When running Team Build I get additional
error information (which I don't see when running in Visual Studio):
light.exe : error LGHT0001 : Item has already been added. Key in dictionary:
'InstallUISequence/PrepareDlg' Key being added: 'InstallUISequence/PrepareDlg'
Exception Type: System.ArgumentException
Stack Trace:
at System.Collections.SortedList.Add(Object key, Object value)
at
Microsoft.Tools.WindowsInstallerXml.WixActionRowCollection.Add(WixActionRow
actionRow, Boolean overwrite)
at Microsoft.Tools.WindowsInstallerXml.Linker.SequenceActions(RowCollection
actionRows, RowCollection suppressActionRows)
at Microsoft.Tools.WindowsInstallerXml.Linker.Link(SectionCollection
sections, ArrayList transforms)
at Microsoft.Tools.WindowsInstallerXml.Tools.Light.Run(String[] args)
Binder temporary directory located at 'C:\Documents and
Settings\_tfsservice\Local Settings\Temp\nnj-8nas'.
Validator temporary directory located at 'C:\Documents and
Settings\_tfsservice\Local Settings\Temp\3b6mv9ua'.
So, it looks like some stuff is "stuck" in memory between builds. It seems that
Visual Studio 2008 / TFS Build 2008 does not actually spawn a separate process
for light.exe, but seems to load the assembly into an appdomain - so any static
stuff would survive successive builds (this is guesswork, but I never see a
light.exe process during builds so I'm guessing VS loads the assembly and runs
stuff).
As a test I removed all UI stuff from the wix project (since the error relates
to InstallUISequence), and now I can build without problems, but of course I
would like some UI for the installer J
Has anyone else run into this problem? Is there a know fix?
Regards,
Arild
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users