You can include all files and sub files by using the keepsubdirs property...
<compoent name="C__MainFiles" id="{954E1067-F73D-4945-B662-92C34F1C3A07}" attr="2" directory="TARGETDIR" feature="F__DefaultFeature" keepsubdirs="true">
<key file="web.config" />
<fileset basedir="${project.dir}">
<include name="**/*.*" />
</fileset>
</component>
There are some issues that you should be aware of, however. All of the files will be linked to that one feature, so that lmits the abililty for users to perform custom installs. Keyfiles can only be relative filenames...it can't be a directory. The keyfile should be constant through revisions of your install (to aid with upgrades)... if you choose to do a dynamic keyfile, I'm sure you could set an nant property (before the msi task) that is equal to a filename. You could use the foreach task to get a list of filenames.
On 7/28/05, Dean Hiller <[EMAIL PROTECTED]> wrote:
Is there a way just to include all files/directories recursively when building and msi install?
Also, for components, is there a way to just have the msi ant task pick any file in ${dir} to be the key file. I am trying to make my msi task as generic as possible so I can reuse most of it without changing to much. We have many installers that install one component and just do the same thing, but the key file is different in all of them.(I don't think I care what the key file is…..can the key file be a directory? That would be nice too.
Thanks,
dean
The information contained in this e-mail and any attachments hereto are for the exclusive use of the addressee and may contain confidential, privileged and nondisclosable information. If the recipient of this e-mail is not the addressee, or a person responsible for delivering this e-mail to the addressee, such recipient is strictly prohibited from reading, printing, photocopying, distributing or otherwise using this e-mail or any attachments hereto in any way. If the recipient has received this e-mail in error, please send return e-mail immediately notifying us of your receipt of this e-mail and delete the e-mail from your inbox. Thank you.