Article Index

MSBuild References

I've been doing a lot of work with MSBuild lately. I've gone beyond using it for my automated builds, and now use it as my tool of choice for automated deployments. While MSI packaging has some nice benefits (transactional installs), I much prefer the transparency and "keep it simple" aspect of an XML script. As a way into ease into what I hope will be a series of posts on MSBuild, I'm publishing a list of the resources that I keep open while authoring MSBuild script.

MSBuild Overview - ok, I don't really have a need for this one anymore, but its a good place to start if you are brand new to MSBuild.

MSBuild Task Reference - a list of the built-in tasks, or "actions", that can be performed by an MSBuild script.

MSBuild Community Tasks - an open source project that collects a number of tasks to perform common actions that are not included out of the box (think NAntContrib). If you are doing anything non-trivial with your build, especially if you are creating deployment scripts, this will be indispensable. Download the nightly build (many new tasks/features since the last release) and keep the .chm documentation file open. I'm also a very active contributor to this project, so tell me what's missing.

MSBuild Reserved Properties - a list of the built-in properties (variables) available to your script. Also keep in mind that all environment variables are automatically available to your script using the property syntax (so you get things like $(USERNAME), $(COMPUTERNAME), and $(SystemRoot) for free).

MSBuild Well-known Item Metadata - a list of the metadata properties available on all items (variables with properties).

You'll notice that most of these are straight out of the MSBuild documentation. I'm compiling them here because these resources are used constantly when developing a script of almost any complexity.