MSBuild Features for Visual C++

MSBuild is the build platform that Microsoft is using across all developer and related tools moving forward. Visual C++ is the last major compiler offering from Microsoft to move onto the MSBuild platform, with the Visual C++ 2010 release using MSBuild as its native project format. Explore the MSBuild basics from a C++ perspective, and see how it can improve your build process.

The move in Visual C++ 2010 to MSBuild is a great step forward for Visual C++ developers. At first glance, the use of a different file format for Visual C++ projects may cause reactions ranging from indifference to concern over disruptions and breakages to any existing customizations to the build process. However, by allowing Visual C++ builds to take advantage of the wide variety of extensibility points in the MSBuild engine, the limited extensibility of the VCPROJ format looks primitive by comparison.



MSBuild: The Basics



In some ways, the use of MSBuild as the file format for Visual C++ is a back-to-the-future moment for long-time C++ developers. In the early days of Visual C++, the MAK file format was preferred way to describe the build process that would compile and link a collection of source code files into a binary image. Although MAK files and the nmake tool are still supported, the file format of Visual C++ changed over the years to an XML format that was not compatible with nmake. To support Visual C++ compilations on build boxes and other machines without the Visual C++ IDE installed, VCBuild.exe was introduced; it can build based on the Visual C++ XML VCPROJ file format. A degree of MSBuild support is available in Visual C++ 2008 and below with the VBBuild MSBuild task, but this treats the Visual C++ compilation as a black box, and does not allow easy integration with the rest of MSBuild’s features.

Visual C++ 2010 uses MSBuild as the native project file format for C++. This offers a number of advantages for C++ developers—MSBuild is extremely flexible in the ways a build process can be customized, and custom task development for MSBuild is simple (tasks are the 'doing' things in MSBuild, and they will be covered in more details later in this article). Microsoft ships dozens of MSBuild Tasks out-of-the-box, with functionality ranging from copying files to registering assemblies to signing a file with a certificate. There is also a rich range of community and commercial tasks available for more advanced tasks, and the Exec task can be used to call out to existing command-line based build tools.

Read the Rest of this Article at Developer.com

Regional Articles
- MSBuild Features for Visual C++ Alabama
- MSBuild Features for Visual C++ Alaska
- MSBuild Features for Visual C++ Arizona
- MSBuild Features for Visual C++ Arkansas
- MSBuild Features for Visual C++ California
- MSBuild Features for Visual C++ Colorado
- MSBuild Features for Visual C++ Connecticut
- MSBuild Features for Visual C++ DC
- MSBuild Features for Visual C++ Delaware
- MSBuild Features for Visual C++ Florida
- MSBuild Features for Visual C++ Georgia
- MSBuild Features for Visual C++ Hawaii
- MSBuild Features for Visual C++ Idaho
- MSBuild Features for Visual C++ Illinois
- MSBuild Features for Visual C++ Indiana
- MSBuild Features for Visual C++ Iowa
- MSBuild Features for Visual C++ Kansas
- MSBuild Features for Visual C++ Kentucky
- MSBuild Features for Visual C++ Louisiana
- MSBuild Features for Visual C++ Maine
- MSBuild Features for Visual C++ Maryland
- MSBuild Features for Visual C++ Massachusetts
- MSBuild Features for Visual C++ Michigan
- MSBuild Features for Visual C++ Minnesota
- MSBuild Features for Visual C++ Mississippi
- MSBuild Features for Visual C++ Missouri
- MSBuild Features for Visual C++ Montana
- MSBuild Features for Visual C++ Nebraska
- MSBuild Features for Visual C++ Nevada
- MSBuild Features for Visual C++ New Hampshire
- MSBuild Features for Visual C++ New Jersey
- MSBuild Features for Visual C++ New Mexico
- MSBuild Features for Visual C++ New York
- MSBuild Features for Visual C++ North Carolina
- MSBuild Features for Visual C++ North Dakota
- MSBuild Features for Visual C++ Ohio
- MSBuild Features for Visual C++ Oklahoma
- MSBuild Features for Visual C++ Oregon
- MSBuild Features for Visual C++ Pennsylvania
- MSBuild Features for Visual C++ Rhode Island
- MSBuild Features for Visual C++ South Carolina
- MSBuild Features for Visual C++ South Dakota
- MSBuild Features for Visual C++ Tennessee
- MSBuild Features for Visual C++ Texas
- MSBuild Features for Visual C++ Utah
- MSBuild Features for Visual C++ Vermont
- MSBuild Features for Visual C++ Virginia
- MSBuild Features for Visual C++ Washington
- MSBuild Features for Visual C++ West Virginia
- MSBuild Features for Visual C++ Wisconsin
- MSBuild Features for Visual C++ Wyoming

Rss   Delicious   Digg   Add To My Yahoo   Add To My Google   Bookmark   Search Plugin

Topics:
Architecture & Design Languages & Tools Project Management Web Services
Database Microsoft & .NET Security Wireless
Java Open Source Techniques XML