views:

43

answers:

2

I have a project where I create WiX (Windows Installer for XML) files, when they are not already present. It is working perfectly. Now I want to expand it to add more functionality. I was wondering if there is a way to create a Visual Studio project programmatically? This project is run as part of our nightly build process, and when a new wix file is needed it is created, but I want to have everything in place when the build is finished so if necessary you can just open the project in Visual Studio and start editing. Am I dreaming outside the realm of possibility or no? Any nudge in the right direction will be greatly appreciated.

+5  A: 

Project files are xml, so there is no reason why you couldn't (the hard way)

There are Visual Studio APIs available for creating projects How to: Programatically Create Projects

phsr
Thanks for the overly quick response. I have no doubt that is the perfect answer to my question, sadly I think that is taking me far in over my head.
Adkins
+1  A: 

In general, I don't believe this is a good idea. While I'm in favor of full end to end build automation, the installer is source and any changes to it should be done intentionally. I don't like the face that files blip in and blip out of the install. If a product adds a file, it should be explicitly added to the installer and if a file is removed it should be explicitly removed from the installer. Any change to this baseline without a corrosponding change should raise a build break.

This is, IMO, the only way to be 100% certain that what goes into an install is intentional and accurate.

Christopher Painter