MSBuild Team Blog

"Coding ... the boring bit between builds"

Browse by Tags

Tagged Content List
  • Blog Post: How would you spend $100 on MSBuild?

    We're currently planning for our next version (aka, "Dev10" - no code name this time) and subsequent releases. In that spirit, I'd like to do a quick poll of MSBuild aficionados to help us keep our "vision" for MSBuild aligned with yours, our customers. First, a caveat - while ideally I would like...
  • Blog Post: Multitargeting against .NET 2.0

    If you're using the new VS 2008 multitargeting features to target .NET 2.0 you should be aware that in VS 2008 they have a limitation related to service packs. In .NET 2.0 SP1, the CLR team has added a few types to existing .NET 2.0 assemblies. For example, DateTimeOffset has been added to mscorlib...
  • Blog Post: Multi-Targeting : How does it work?

    So in my last post , I described the multi-targeting feature at a very high level. I discussed how there will be three frameworks that you can build "for", and how there will be two toolsets - i.e. .NET Framework 2.0 / MSBuild 2.0 toolset, and the .NET Framework 3.5 / MSBuild 3.5 toolset. Recall that...
  • Blog Post: MSBuild / Visual Studio aware error messages and message formats

    MSBuild recognizes error messages and warnings that have been specially formatted by many command line tools that typically write to the console. For instance, take a look at the following error messages - they are all properly formatted to be MSBuild and Visual Studio friendly. Main.cs(17,20): warning...
  • Blog Post: Post Summary: MSBuild in Visual Studio

    For easy reference here's a list of all the MSBuild in Visual Studio posts we ran over the last couple of months. If you enjoyed this series please drop us a short note and let us know. Look for another series, this time on the internals of Microsoft.Common.Targets, that will start in the next week or...
  • Blog Post: MSBuild in Visual Studio Part 14: Managing Project Files

    One last little interesting piece of information on how Visual Studio uses MSBuild relates to the loading of project files. Each project file loaded shares the same MSBuild Engine object within Visual Studio. In addition, when we find a project-to-project reference within a project file we do our best...
  • Blog Post: MSBuild in Visual Studio Part 13: The Three Custom Loggers

    We’re written in the past about how to write custom loggers , and you probably won’t be surprised to learn that Visual Studio makes use of custom loggers when interacting with MSBuild. There are three separate loggers, each with its own purpose. The project load logger is used when projects are opened...
  • Blog Post: MSBuild in Visual Studio Part 12: Compiling Inside Visual Studio

    We’ve touched briefly on how the Compile target is used by Visual Studio, but only on how it relates to Intellisense. Of course while Intellisense is nice, most people would like to actually compile a complete application using Visual Studio. If you’re reading this blog you likely already know that MSBuild...
  • Blog Post: MSBuild in Visual Studio Part 11: Other Special Targets

    The last two entries walked through how the Compile target is used by the IDE to drive certain features. There are a number of other targets that get called at various times. Several targets exist to help compute project output groups, which are sets of files related to the project. These are useful...
  • Blog Post: MSBuild in Visual Studio Part 10: What Does MSBuild Have To Do With Intellisense?

    In our last post we started to dig into how the Compile target is used by Visual Studio at design time, and the details around the in-process compiler. When Rajeev was talking about the in-process vs. out-of-process compiler during the talk I must admit I started to doze off a bit. I’m much more of a...
  • Blog Post: MSBuild in Visual Studio Part 9: Compiling at Design-Time Using the In-Process Compiler

    All the posts so far in our series have talked about reading from and writing to project files. I hope you’ve found all that interesting, but today we’re going to shift gears a bit and start to talk about how Visual Studio leverages MSBuild during design-time. If you’ve played with MSBuild .targets...
  • Blog Post: MSBuild in Visual Studio Part 8: Writing Items To the Project File

    Reading items from the project file, as we discussed in our last post , is quite straightforward and doesn’t have much in the way of interesting gotchas. Have no fear! We’ll make up for that with all the gotchas around writing items back. The first thing to realize is that the project system actually...
  • Blog Post: MSBuild in Visual Studio Part 7: Reading Items From the Project File

    I don’t know about everyone else, but I’m pretty sick of escaping and properties [:)] It’s time to move on to the other major way the project system leverages MSBuild, and that’s the wonderful world of items. After all, without items there’d be no way to list the files you want compiled or the resources...
  • Blog Post: MSBuild in Visual Studio Part 6: Quiz Answers, Round 2

    If you’re joining us mid-stream, these are answers to a quiz on property escaping when saving properties back to the project file. Let’s pick up right where we left off in our last post. DisabledWarnings: Not escaped This is a great example of why we default to not escaping when we have the choice...
  • Blog Post: MSBuild in Visual Studio Part 5: Quiz Answers, Round 1

    Our last post included a short quiz on property escaping, and hopefully you found it somewhat entertaining. Since the answers to when and how we escape can get rather lengthy, the answers to the quiz are split across two posts. Let’s get right into part one! OutputPath: Escaped We escape this property...
  • Blog Post: MSBuild in Visual Studio Part 4: A Quiz on Project Escaping

    When we last posted everything was looking pretty straightforward. At this point we know how the project system reads and writes properties from the project file. What we haven't talked about is the mess involved in escaping property values. During the presentation when Rajeev started to talk about this...
  • Blog Post: MSBuild in Visual Studio Part 3: How the IDE Writes Properties

    In our last post we looked at how the project system uses MSBuild to read properties out of the project file. Now that we know how properties get into the project system, let’s take a look at how updated properties get pushed back to the project file. As you might expect after reading the previous...
  • Blog Post: MSBuild in Visual Studio Part 2: How the IDE Reads Properties

    Many of the properties in an MSBuild project file show up directly within the Visual Studio environment. The most common place you’ll see the properties show up is in the project properties screen: How do these properties get from the MSBuild XML in the project file into the dialog? Well, as you...
  • Blog Post: MSBuild in Visual Studio Part 1: Loading and Saving Project Files

    One of the questions we get asked on occasion is how well manual changes to project files round trip through Visual Studio. If you invest a ton of effort into manually tweaking your project file with new targets, it really wouldn’t be fun if opening it inside Visual Studio nuked all the changes. In...
  • Blog Post: A New Series: MSBuild in Visual Studio

    Last week Rajeev gave a presentation on the integration between MSBuild and the Visual Studio. It was an absolutely fascinating view into the coupling between these two very important parts of working with VS, and over the next couple of weeks we’ll be sharing the content of his deck with everyone. Along...
Page 1 of 1 (20 items)