Search code examples
wixheatwix3.9

Reference subdirectory generated by WiX Heat tool


I am harvesting a directory using WiX Heat, but I need to reference one of the subdirectories that is harvested in another part of my installer. The problem is that the subdirectories generated by Heat have random Ids assigned to them, so I don't know the Id that I need to reference

...
<Directory Id="dirEF1CC7518E38625D204F4AB4474A284C" Name="folderIWantToReference">
...

The subdirectory will always be in the directory that I'm harvesting with Heat

Is there a way to force Heat to use consistent Ids at least for the folders that I need to reference, or is there a way to find an Id of a Directory based on Name?


Solution

  • http://wixtoolset.org/documentation/manual/v3/overview/heat.html

    I found the easiest solution in this case is to use the Heat option -suid which will

    Suppress unique identifiers for files, components, & directories.

    and it will make the example output look like this instead

    ...
    <Directory Id="folderIWantToReference" Name="folderIWantToReference">
    ...
    

    This works well only if you know that the directory that you are harvesting does not have any files or folders with duplicate names or names that conflict with any ids that you are already using in your installer.