Custom MSBuild Task Development with Visual C++ Wisconsin

Visual C++ 2010 sees the integration of MSBuild with Visual C++. MSBuild is Microsoft's common build engine and one of its key design goals is the ability to support a high-degree of flexibility in customizing the build process. See how a custom MSBuild task can be built in Visual C++, and how the task can be used to customize the build process of other Visual C++ 2010 projects.

Local Companies

PC Repair and Networking, LLC
414-659-1089
w182 s8686 Racine Ave
Muskego, WI
Get IT Now
608-244-4550
2809 E Washington Ave
Madison, WI
GroundUP Technology Services
920-327-2021
120 North Danz Avenue
Green Bay, WI
3Back LLC
414-433-1962
1509 Rapids Drive
Racine, WI
PAETEC
414-831-5020
731 N Jackson St Suite 410
Milwaukee, WI
Computer Troubleshooters-Manitowoc Computer Store and Service Center
920-682-0911
1207 Washington Street
Manitowoc, WI
Infinite Solution Services
414-327-5555
3500 S 92nd St
Milwaukee, WI
brentkaul.com
123.123.1234
W14545 Redwood Dr
Menomonee Falls, WI
Centurion Data Systems
262-524-9290
N27 W23957 Paul Rd Suite 102
Pewaukee, WI
JellTech Consulting
262-373-1336
21180 W. Capitol Drive
Pewaukee, WI

The introduction of MSBuild in Visual C++ 2010 opens up the C++ compilation and linking process to a high degree of customization and extension. Prior to MSBuild, the build process could only be extended with pre- and post-build steps that offered limited flexibility and were decoupled from the rest of the build process. In contrast, MSBuild allows fine-tuned, integrated extension, and any new-format Visual C++ project file (vcxproj) can be customized to complete whatever task is required during a build.

In my last Using Visual C++.NET article, MSBuild basics were covered, including Tasks, which are the building-blocks of the build process. Tasks take items and properties to complete some action, and tasks are chained together in targets, with targets being the entry point into a MSBuild file. MSBuild and Visual C++ ship with a large number of predefined tasks, but in the spirit of MSBuild extensibility, custom task development is extremely easy with helper classes present in the MSBuild assemblies. The remainder of this article will cover the process of building a custom MSBuild task in C++/CLI and then using this task in a Visual C++ 2010 project.



Developing the Hard Link Task



The NT File System (NTFS) supports a feature known as hard links, which allows multiple directory entries to map to the same underlying file. Hard links have a number of advantages over simply copying a file, with the main advantage being that, because all directory entries point to the same physical file, an update to the file is automatically available to all consumers of the file regardless of which directory entry the file is accessed through. Using hard links also conserves disk space, as multiple copies of the same file are not scattered randomly across a drive.

Read the Rest of this Article at Developer.com

Featured Local Company

Computer Troubleshooters-Manitowoc Computer Store and Service Center

920-682-0911
1207 Washington Street
Manitowoc, WI

Regional Articles
- Custom MSBuild Task Development with Visual C++ Appleton WI
- Custom MSBuild Task Development with Visual C++ Baraboo WI
- Custom MSBuild Task Development with Visual C++ Beaver Dam WI
- Custom MSBuild Task Development with Visual C++ Beloit WI
- Custom MSBuild Task Development with Visual C++ Brookfield WI
- Custom MSBuild Task Development with Visual C++ Burlington WI
- Custom MSBuild Task Development with Visual C++ Cedarburg WI
- Custom MSBuild Task Development with Visual C++ Chippewa Falls WI
- Custom MSBuild Task Development with Visual C++ Cudahy WI
- Custom MSBuild Task Development with Visual C++ De Pere WI
- Custom MSBuild Task Development with Visual C++ Delavan WI
- Custom MSBuild Task Development with Visual C++ Eau Claire WI
- Custom MSBuild Task Development with Visual C++ Elkhorn WI
- Custom MSBuild Task Development with Visual C++ Fond Du Lac WI
- Custom MSBuild Task Development with Visual C++ Fort Atkinson WI
- Custom MSBuild Task Development with Visual C++ Franklin WI
- Custom MSBuild Task Development with Visual C++ Green Bay WI
- Custom MSBuild Task Development with Visual C++ Hartland WI
- Custom MSBuild Task Development with Visual C++ Janesville WI
- Custom MSBuild Task Development with Visual C++ Kaukauna WI
- Custom MSBuild Task Development with Visual C++ Kenosha WI
- Custom MSBuild Task Development with Visual C++ La Crosse WI
- Custom MSBuild Task Development with Visual C++ Lake Geneva WI
- Custom MSBuild Task Development with Visual C++ Madison WI
- Custom MSBuild Task Development with Visual C++ Manitowoc WI
- Custom MSBuild Task Development with Visual C++ Marinette WI
- Custom MSBuild Task Development with Visual C++ Marshfield WI
- Custom MSBuild Task Development with Visual C++ Menasha WI
- Custom MSBuild Task Development with Visual C++ Menomonee Falls WI
- Custom MSBuild Task Development with Visual C++ Menomonie WI
- Custom MSBuild Task Development with Visual C++ Merrill WI
- Custom MSBuild Task Development with Visual C++ Middleton WI
- Custom MSBuild Task Development with Visual C++ Milwaukee WI
- Custom MSBuild Task Development with Visual C++ Mosinee WI
- Custom MSBuild Task Development with Visual C++ Mukwonago WI
- Custom MSBuild Task Development with Visual C++ Muskego WI
- Custom MSBuild Task Development with Visual C++ Neenah WI
- Custom MSBuild Task Development with Visual C++ New Berlin WI
- Custom MSBuild Task Development with Visual C++ Oak Creek WI
- Custom MSBuild Task Development with Visual C++ Oconomowoc WI
- Custom MSBuild Task Development with Visual C++ Onalaska WI
- Custom MSBuild Task Development with Visual C++ Oshkosh WI
- Custom MSBuild Task Development with Visual C++ Pewaukee WI
- Custom MSBuild Task Development with Visual C++ Racine WI
- Custom MSBuild Task Development with Visual C++ Rhinelander WI
- Custom MSBuild Task Development with Visual C++ Rice Lake WI
- Custom MSBuild Task Development with Visual C++ River Falls WI
- Custom MSBuild Task Development with Visual C++ Schofield WI
- Custom MSBuild Task Development with Visual C++ Shawano WI
- Custom MSBuild Task Development with Visual C++ Sheboygan WI
- Custom MSBuild Task Development with Visual C++ South Milwaukee WI
- Custom MSBuild Task Development with Visual C++ Stevens Point WI
- Custom MSBuild Task Development with Visual C++ Sturgeon Bay WI
- Custom MSBuild Task Development with Visual C++ Sun Prairie WI
- Custom MSBuild Task Development with Visual C++ Superior WI
- Custom MSBuild Task Development with Visual C++ Thiensville WI
- Custom MSBuild Task Development with Visual C++ Two Rivers WI
- Custom MSBuild Task Development with Visual C++ Watertown WI
- Custom MSBuild Task Development with Visual C++ Waukesha WI
- Custom MSBuild Task Development with Visual C++ Waupaca WI
- Custom MSBuild Task Development with Visual C++ Wausau WI
- Custom MSBuild Task Development with Visual C++ West Bend WI
- Custom MSBuild Task Development with Visual C++ Whitewater WI
- Custom MSBuild Task Development with Visual C++ Wisconsin Rapids WI

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