locked
Migration from Visual Studio 2010 shell isolated to VS2013 RRS feed

  • General discussion

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

    I have installed VS2013, VS2013 SDK and VS2013 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 12.0 assemblies. I have also upgrade MPF source files to MPFProj12. 

    After some difficulties I successfully migrate application to VS2013.

    I can open application and also package loads correctly, but the problem occurs when I am trying to open existing project or create new project inside shell application. 

    The problem occurs in MPF when ProjectNode uses service type of IVsBuildManagerAccessor for building the project. It looks like the SVsBuildManagerAccessor.BeginDesignTimeBuild() method behaves differently in VS 2013 and the build is not initialized properly.

    When executing »BuildManager.DefaultBuildManager.PendBuildRequest(requestData);" we get an exception:

                    - An exception of type 'System.InvalidOperationException' occurred in Microsoft.Build.dll but was not handled in user code

                    - Additional information: The operation cannot be completed because BeginBuild has not yet been called.                                              

    I also noticed that when ServiceProvider is getting service type of SVsBuildManagerAccessor "this.Site.GetService(typeof(SVsBuildManagerAccessor)) as IVsBuildManagerAccessor;" regardless MsBuld version 4.0 is already loaded it also loads MsBuild version 12.0. 

    I can make workaround if I modify the ProjectNode code, to skip the design time build initialization and instand of IVsBuildManagerAccessor always use the BuildManager.DefaultBuildManager.BeginBuild() method directly. 

    After using this workaround everything seems to work fine for now. 

    I am not sure if this temporary workaround will solve problem in general.

    Does anybody have similar problems when upgrading VS Shell isolated project to VS Shell 2013?

    Probably I should wait for Managed Package Framework for Projects for VS2013.

     

    Thanks.

    Uros

    Wednesday, December 4, 2013 9:21 AM

All replies

  • Hello,

    Welcome to MSDN forum and thank you for sharing your experience with us here.

    According to the description above, you have found out the workaround for this problem.

    Since the question here is "Does anybody have similar problems when upgrading VS Shell isolated project to VS Shell 2013?", I think it is better to change the issue type to “General Discussion”  so that more people could feel free to take part in it.

    If you think it is not unsuitable to change the type, please feel free to change the issue type back to “Question” by opening the Options list at the top of the post window.

    Sincerely,

    Jane.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Thursday, December 5, 2013 5:24 AM
  • Hello.

    After I made workaround modifying ProjectNode code, to skip the design time build initialization build seems to succeed without errors.

    Now the problem is because build succeed regardless there are errors present in project.

    Does anybody have similar problems with mpfProj and VS13 shell project?

    Thanks.

    Regrads.

    Uroš

    Wednesday, December 11, 2013 7:50 AM
  • Hello.

    I have the same issue after migrations VS2010 Isolated Shell to VS2015

    Friday, May 11, 2018 8:45 AM