Upgrading VS2010 Isolated Shell Project to use 2012 Isolated Shell

Jan 3, 2013 at 4:11 PM

My company has developed an application using the Visual Studio 2010 Isolated Shell and implemented a custom project using mpfproj10. We have a need to upgrade the application to use the Visual Studio 2012 Isolated Shell so I am attempting to convert our application.

I have installed VS2012, VS2012 SDK and VS2012 Isolated Shell on my system. I have updated the target framework to 4.5 for all C# projects in our application's solution, and updated all references in all C# projects to use VS 11.0 assemblies. (Just to make sure, I created a new 2012 Isolated Shell test project and compared the references in that project with the references in our project.)

Is updating the project to use mpfproj11 as simple as removing the reference to the mpfproj10's ProjectBase.files file and replacing it with a reference to mpfproj11's ProjectBase.files file? I see two references to the path in my project's csproj file:

<ProjectBasePath>$(SolutionDir)mpfproj10\</ProjectBasePath>

<Import Project="$(SolutionDir)mpfproj10\ProjectBase.Files" />

(Interestingly, the <ProjectBasePath> setting had to be modified to include a trailing backslash after opening the solution in VS2012 or the files could not be found.)

Regardless of whether I use the mpfproj10 or mpfproj11 files, when I attempt to add a new item to a project in our application, an exception is thrown in the TrackDocumentsHelper.cs file's GetIVsTrackProjectDocuments2() function. This line always returns a null:

IVsTrackProjectDocuments2 documentTracker = this.projectMgr.Site.GetService(typeof(SVsTrackProjectDocuments)) as IVsTrackProjectDocuments2;

I have created a post on the MSDN forum for converting an application from using VS2010 Isolated Shell to VS2012 Isolated Shell in hopes that someone would have some knowledge on this subject.

http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/f35c4654-bb42-4c43-ac23-01c2cfed2516/

I have been able to overcome a number of issues so far, but this missing service issue has me confounded right now.

 

Jan 4, 2013 at 12:17 AM

OK, I made a bone-headed mistake that caused this issue. In attempting to get rid of some Team Foundation Server menu options that were appearing in 2012 that were not there in 2010, I uncommented the following line in the pkgundef file:

// Visual Studio Source Control Integration Package
// [$RootKey$\Packages\{53544C4D-E3F8-4AA0-8195-8A8D16019423}]

Commenting out this line once again has resolved this issue.

Jan 4, 2013 at 7:50 PM

The last issue I had was that my MPF project's references still pointed to Microsoft.VisualStudio.ComponentModelHost for version 10.0. After changing that reference to point to the 11.0 version, I am finally able to build and run projects within our isolated shell application without issues! Hopefully that is the last problem related to the switch!