HeatDirectory Task
The HeatDirectory task wraps heat.exe, the WiX harvester, using the dir harvesting type. Authoring is generated for type libraries and self-registration from DllRegisterServer for any files found in directories. It supports a variety of settings that are described in more detail below. To control these settings in your .wixproj file, you can create a PropertyGroup and specify the settings that you want to use for your build process. The following is a sample PropertyGroup that contains settings that will be used by the HeatDirectory task:
<HeatDirectory NoLogo="$(HarvestDirectoryNoLogo)" SuppressAllWarnings="$(HarvestDirectorySuppressAllWarnings)" SuppressSpecificWarnings="$(HarvestDirectorySuppressSpecificWarnings)" ToolPath="$(WixToolPath)" TreatWarningsAsErrors="$(HarvestDirectoryTreatWarningsAsErrors)" TreatSpecificWarningsAsErrors="$(HarvestDirectoryTreatSpecificWarningsAsErrors)" VerboseOutput="$(HarvestDirectoryVerboseOutput)" AutogenerateGuids="$(HarvestDirectoryAutogenerateGuids)" GenerateGuidsNow="$(HarvestDirectoryGenerateGuidsNow)" OutputFile="$(IntermediateOutputPath)_%(HarvestDirectory.Filename)_dir.wxs" SuppressFragments="$(HarvestDirectorySuppressFragments)" SuppressUniqueIds="$(HarvestDirectorySuppressUniqueIds)" Transforms="%(HarvestDirectory.Transforms)" Directory="@(HarvestDirectory)" ComponentGroupName="%(HarvestDirectory.ComponentGroupName)" DirectoryRefId="%(HarvestDirectory.DirectoryRefId)" KeepEmptyDirectories="%(HarvestDirectory.KeepEmptyDirectories)" PreprocessorVariable="%(HarvestDirectory.PreprocessorVariable)" SuppressCom="%(HarvestDirectory.SuppressCom)" SuppressRootDirectory="%(HarvestDirectory.SuppressRootDirectory)" SuppressRegistry="%(HarvestDirectory.SuppressRegistry)" />
The following table describes the common WiX MSBuild parameters that are applicable to the HeatDirectory task.
Parameter | Description |
NoLogo |
Optional boolean parameter. Specifies that the tool logo should be suppressed. The default is false. This is equivalent to the -nologo switch. |
SuppressAllWarnings |
Optional boolean parameter. Specifies that all warnings should be suppressed. The default is false. This is equivalent to the -sw switch. |
SuppressSpecificWarnings |
Optional string parameter. Specifies that certain warnings should be suppressed. This is equivalent to the -sw[N] switch. |
TreatSpecificWarningsAsErrors |
Optional string parameter. Specifies that certain warnings should be treated as errors. This is equivalent to the -wx[N] switch. |
TreatWarningsAsErrors |
Optional boolean parameter. Specifies that all warnings should be treated as errors. The default is false. This is equivalent to the -wx switch. |
VerboseOutput |
Optional boolean parameter. Specifies that the tool should provide verbose output. The default is false. This is equivalent to the -v switch. |
The following table describes the parameters that are common to all heat tasks that are applicable to the HeatDirectory task.
Parameter | Description |
AutogenerateGuids |
Optional boolean parameter. Whether to generate authoring that relies on auto-generation of component GUIDs. The default is $(HarvestAutogenerateGuids) if specified; otherwise, true. |
GenerateGuidsNow |
Optional boolean parameter. Whether to generate authoring that generates durable GUIDs when harvesting. The default is $(HarvestGenerateGuidsNow) if specified; otherwise, false. |
OutputFile |
Required item parameter. Specifies the output file that contains the generated authoring. |
SuppressFragments |
Optional boolean parameter. Whether to suppress generation of separate fragments when harvesting. The default is $(HarvestSuppressFragments) if specified; otherwise, true. |
SuppressUniqueIds |
Optional boolean parameter. Whether to suppress generation of unique component IDs. The default is $(HarvestSuppressUniqueIds) if specified; otherwise, false. |
Transforms |
Optional string parameter. XSL transforms to apply to all generated WiX authoring. Separate multiple transforms with semicolons. The default is $(HarvestTransforms) if specified. |
The following table describes the parameters that are specific to the HeatDirectory task.
Parameter | Description |
Directory |
Required item group parameter. The list of directories to harvest. |
ComponentGroupName |
Optional string parameter. If you are harvesting multiple directories in your project,
you should specify this metadata to create unique file names for the generated authoring. The name of the ComponentGroup to create for all the generated authoring. |
DirectoryRefId |
Optional string parameter. The ID of the directory to reference instead of TARGETDIR. |
KeepEmptyDirectories |
Optional boolean parameter. Whether to create Directory entries for empty directories. |
PreprocessorVariable |
Optional string parameter. Substitute SourceDir for another variable name (ex: var.Dir). |
SuppressCom |
Optional boolean parameter. Suppress generation of COM registry elements. The default is false. |
SuppressRegistry |
Optional boolean parameter. Suppress generation of any registry elements. The default is false. |
SuppressRootDirectory |
Optional boolean parameter. Suppress generation of a Directory element for the parent directory of the file. The default is false. |