Один из вариантов - написать XSL-преобразование, модифицирующее сгенерированный вывод HEAT (например, удалив ненужные файлы):
heat.exe dir <other arguments> -t my.xsl
Чтобы удалить конкретный файл, ваш xsl может выглядеть примерно так:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
<xsl:output method="xml" indent="yes"/>
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="node()[child::node()[@Source='UnwantedAssembly.dll']]" />
</xsl:stylesheet>
Этот подход позволяет также вносить другие изменения в файл.Хотя для удаления только нежелательных файлов обычно проще просто удалить их из каталога сборки или переместить нужные файлы в другой каталог и запустить там HEAT.