Only use "-gg" with heat if you use heat once to create your WXS files you will later maintain manually. Do not use "-gg" with heat used in a build. Use "-ag" instead. Using "-gg" repeatedly violates the component rules (specifically the one about never changing a component's guid). Blair Murri > Date: Sat, 22 Jun 2013 14:34:44 -0400 > From: gorley.phili...@gmail.com > To: wix-users@lists.sourceforge.net > Subject: Re: [WiX-users] Heat.exe not including all references/dependencies > > You could create a separate configuration, say Custom|AnyCPU, for your > solution, where all of your projects' output paths are set to the same > folder, along with all assemblies having CopyLocal set to true, so you > can just run Heat on that directory to grab everything. You would do > this by adding something along these lines to each project: > > <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == > 'Custom|AnyCPU' "> > <DebugType>pdbonly</DebugType> > <Optimize>true</Optimize> > <OutputPath>PATH WITH TRAILING SLASH</OutputPath> > <DefineConstants>TRACE</DefineConstants> > <ErrorReport>prompt</ErrorReport> > <WarningLevel>4</WarningLevel> > </PropertyGroup> > > You could also put that fragment of xml in a separate file and include > it in each project using the Import element. > > Short of a set up like that, you could write a Heat extension to do it > all for you. > > On 22/06/2013 5:46 AM, Tom - wrote: > > This is a follow-up to my previous conundrum of all needed assemblies not > > getting included in my setup-package. The answer seems simpler than I > > thought. Previous setup projects in VS.NET 2010 was obviously kind enough > > to detect and include all references. Setting Heat.exe to a single output > > directory (the one that creates the main application .exe) does not include > > all the references because all the assemblies are not in that directory. > > The assemblies are spread around the project-folders of the 30+ project > > large application. This is a quite awful problem to have because it will > > still install, but it won't crash until the installed application wants to > > load whatever assembly was not included by heat.exe. So how do I work with > > this? Merge all project folders into a single folder that I heat.exe before > > building? Manually verify all components are included after installing the > > finished product? How do you guys handle it? All I do in my pre-build event > > today is: > > > > "$(WIX)bin\heat.exe" dir "D:\MyApplication\Project1\bin" -var > > var.AppBuildDir -cg HeatBinaryFiles -gg -scom -sreg -sfrag -srd -dr > > INSTALLDIRECTORY -out "$(ProjectDir)Fragments\HeatDirectoryFragment.wxs" > > > > That will obviously not get all dependencies as "Project1", albeit being > > the startup-project with the main .exe, is but one of 30+ projects. > > > > ------------------------------------------------------------------------------ > > This SF.net email is sponsored by Windows: > > > > Build for Windows Store. > > > > http://p.sf.net/sfu/windows-dev2dev > > _______________________________________________ > > WiX-users mailing list > > WiX-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by Windows: > > Build for Windows Store. > > http://p.sf.net/sfu/windows-dev2dev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows:
Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users