无法将项目转换为VSProject

时间:2016-12-15 09:07:48

标签: c# visual-studio-2013 solution envdte vspackage

我们创建了类似下面的解决方案,并在创建解决方案后添加了默认项目。请参考以下代码

        Type visualStudioType = Type.GetTypeFromProgID("VisualStudio.DTE.12.0", true);
        DTE env = Activator.CreateInstance(visualStudioType, true) as DTE;
        ServiceProvider serviceProvider = new ServiceProvider(env as Microsoft.VisualStudio.OLE.Interop.IServiceProvider);
        DTE dte = (DTE)serviceProvider.GetService(typeof(DTE));
        Object obj = System.Activator.CreateInstance(visualStudioType, true);

        EnvDTE80.DTE2 dte8Obj = (EnvDTE80.DTE2)obj;

        Solution2 soln = (Solution2)dte8Obj.Solution;

1.我在下面创建项目解决方案时会出现异常。

Solution explorer Exception

2.创建项目后,我们无法将项目转换为VSProject。它显示如下的异常。

Exception when convert project as vsproject

请为解决上述问题提供解决方案。

1 个答案:

答案 0 :(得分:0)

您的代码可以简化为:

Type visualStudioType = Type.GetTypeFromProgID("VisualStudio.DTE.12.0", true);

EnvDTE80.DTE2 dte2 = Activator.CreateInstance(visualStudioType, true) as EnvDTE80.DTE2;

EnvDTE80.Solution2 soln = dte2.Solution as EnvDTE80.Solution2;

关于定位EnvDTE版本7.0.3300.0的错误,请参阅:

Error When EnvDTE Is Used with VSLangProj Assemblies