[wix-users] automated fileset using heat

Brannon King Brannon.King at asirobots.com
Thu Feb 11 08:44:41 PST 2016

We use Heat as part of our process. It works. There are a few things about it that I find quite bothersome. First is the requirement to use XSLT to remove certain files from it so that I can include those directly in my primary WXS file. The ability to mask files in or out would go a long way to improving that. Second, the thing is completely undiscoverable. You have to be explicitly instructed on how the thing works. It would be nice if it was smart enough to mark files with an assembly type, but it is not. It will generate huge files if you’re not careful; take a close look at what I marked as true and false:

    <HeatDirectory NoLogo="$(HarvestDirectoryNoLogo)" SuppressAllWarnings="$(HarvestDirectorySuppressAllWarnings)" SuppressSpecificWarnings="$(HarvestDirectorySuppressSpecificWarnings)" ToolPath="$(WixToolPath)" TreatWarningsAsErrors="$(HarvestDirectoryTreatWarningsAsErrors)" TreatSpecificWarningsAsErrors="$(HarvestDirectoryTreatSpecificWarningsAsErrors)" VerboseOutput="$(HarvestDirectoryVerboseOutput)" AutogenerateGuids="$(HarvestDirectoryAutogenerateGuids)" GenerateGuidsNow="$(HarvestDirectoryGenerateGuidsNow)" OutputFile="$(ProjectDir)GeneratedComponents.wxs" SuppressFragments="$(HarvestDirectorySuppressFragments)" SuppressUniqueIds="$(HarvestDirectorySuppressUniqueIds)" Transforms="Exclusions.xslt" Directory="$(SourceDir)" ComponentGroupName="AsiWix_Generated" DirectoryRefId="INSTALLDIR" PreprocessorVariable="var.AsiWixSourceDir" KeepEmptyDirectories="false" SuppressCom="true" SuppressRootDirectory="true" SuppressRegistry="true"/>

From: Steve Ogilvie<mailto:sogilvie at msn.com>
Sent: Thursday, February 11, 2016 8:38 AM
To: WiX User List<mailto:wix-users at lists.wixtoolset.org>
Subject: [wix-users] automated fileset using heat

Hi folks,

We are using WiX 3.10.2 and TFS 2015 with VS 2015.

Currently I use heat to harvest a large fileset, then manually put in the components/file elements into the product.wxs.

Is anyone using heat to automate the harvesting of large filesets within the build process (we use MSBUILD)

I.e. use heat the harvest a folder structure (a web application) and have heat use variables for the sourceDir and the Component Group name.
Have that Component Group listed in the feature set and etc. So the build process just runs heat before building the installer.


Someone has suggested I try this and before I do all the work to try it want feedback from the WiX community...



Steven Ogilvie

Ottawa, ON

Winston Churchill, "We make a living by what we get, but we make a life by what we give."

WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

This message contains confidential information and is intended only for the recipient. If you are not the named addressee you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately if you have received this e-mail by mistake and delete this e-mail from your system. Finally, the recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.

More information about the wix-users mailing list