I'm trying to make an install that puts a copy of the same files in multiple places...
is there a simple way to do this?
eg. if I wanted to put a.txt b.txt c.txt into all of the following directories :-
.\Blah\
.\Txts\
.\Examples\
I'm trying to make an install that puts a copy of the same files in multiple places...
is there a simple way to do this?
eg. if I wanted to put a.txt b.txt c.txt into all of the following directories :-
.\Blah\
.\Txts\
.\Examples\
Simply create multiple components which reference the same file, but install it to different locations. The only gotcha is that you cannot use two <File Source="somefile"/>
elements referencing the same file because they will get the same auto-generated ID. Explicitly give the file elements different IDs to avoid that problem.
<DirectoryRef Id="directory1">
<Component Id="somefile-component1" Guid="...guid1..." >
<File Id="somefile-id1" Source="/path/to/somefile"/>
</Component>
</DirectoryRef>
<DirectoryRef Id="directory2">
<Component Id="somefile-component2" Guid="...guid2..." >
<File Id="somefile-id2" Source="/path/to/somefile"/>
</Component>
</DirectoryRef>
Windows Installer has its own concept for this called "DuplicateFiles". It only works if the files are actually identical, but it sounds like that's what you want. In WIX you implement this via the CopyFile element:
http://wix.sourceforge.net/manual-wix2/wix%5Fxsd%5Fcopyfile.htm
I haven't actually tried it, but it should look something like this
<Component Id='Manual' Guid='11234876-574D-4A9A-A266-5B5EC2C022A4' >
<File Id='Manual' Name='Manual.pdf' DiskId='1' Source='Manual.pdf' KeyPath='yes'>
<CopyFile Id='MyDuplicateFile1' DestinationProperty ='DesktopFolder'/>
</File>
</Component>