This project is read-only.

Managed Package Framework for Projects

Visual Studio 2012

This project contains sample code for creating a new Project System in Visual Studio 2012.

Note: If you need to write a Project System for a previous version of Visual Studio, please use the Visual Studio 2008 version ( or the Visual Studio 2010 version ( of MPFProj.

Project Description

A community project containing the source code and tests of a library for creating project system plug-ins for Visual Studio 2012 using C#.

Requirements for Building the Source Code

  1. Visual Studio 2012
  2. Visual Studio 2012 SDK

Building & testing the Visual Studio Managed Package Framework for Projects

Open the following solution to run the tests and browse the source code:

  • Microsoft.VisualStudio.Project.Tests.sln
    • Nested Project Sample
    • Unit tests
    • Integration Tests

Referencing the Visual Studio Managed Package Framework for Projects

Note that there is no project for building an assembly that can be referenced. Instead, you should import the the MPF project sources directly into your project in order to build them. This can be done by importing the ProjectBase.files MSBuild file into your C# project. Please see NestedProject.csproj and CustomProject.csproj for examples of how to do this.


There are two sample projects that use the library included with the source code.

  • CustomProject - a simple project system
  • NestedProject - a project system that supports nesting.

How to run the tests

The tests can be found in the Microsoft.VisualStudio.Project.Tests.sln and can be executed through Microsoft.VisualStudio.Project.Tests.vsmdi.
There are two type of tests:

  1. Unit tests using mock/fake objects
  2. Integration tests. These tests create a Nested project type and execute the tests on the nested project.


Feel free to join the MPFProj community by

  • Either creating new or finding existing bugs or feature requests you want to work on
  • Leave a note in the comments that you're going to investigate this bug (until you have developer rights, you won't be able to assign bugs to yourself)
  • Download the latest sources and create a bug fix
  • Zip up your changes and post them as an attachment to the work item
  • Talk with the moderators to get an assignment agreement form, fill it out and follow the enclosed instructions to send it to us.

Note that by posting your submission to the Issue Tracker, you agree to do so under the CodePlex Terms Of Use.

Last edited Oct 12, 2012 at 9:23 PM by wibu, version 3