MSBuild task to build VB6


UPDATE: 01 Feb 2010 --- This task is now available in the MSBuild Extension Pack This is not something I thought I would write, but it seems that there are still many out there who have VB6 in their code base and need to have that code built as part of their build process. There …

MSBuild Task: Detokenise File


This task can be used to find and replace tokens in a file or set of files. [25 May 07: - Download the update with samples from here.] There are two distinct ways of using this task. The first way is to pass in a ReplacementValues collection. Easy, the task simply matches on the collection …

Beware $ in MSBuild 1.0


Almost a month since posting Beware % in MSBuild, I find myself having to post on a similar topic. Typically, $ is used all over the place in an MSBuild proj file, and in general you can use it without any cause for concern. An issue arises however, when you try to perform a recursive …

Beware % in MSBuild


Here is a very basic example: <Project DefaultTargets="Full" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"><ItemGroup><Ingredients Include="0%Good"/><Ingredients Include="100%Bad"/></ItemGroup><Target Name="Full"><Message Text="%(Ingredients.Identity)"/></Target></Project> It's a simple cycle through a collection and showing a message. If you think the output is 0%Good100%Bad then you would be wrong. It is in fact: 0%Good100ºd MSBuild uses the % character to show the beginning of an escaped character. You …

Building your solutions using MSBuild – Part 1


Many people seem to be afraid of the angled brackets that accompany MSBuild and tend to avoid it. This is a pity as MSBuild can be as simple or complex as you want to make it. The beauty of the tool is that it's kinda like Lego; you build it bit by bit, enhance it, …