EnvDTE.DTE为Visual Studio 2015创建空C ++项目

时间:2016-10-15 13:47:21

标签: c# c++ visual-studio visual-studio-2015 envdte

我正在尝试使用EnvDTE 以编程方式创建Visual C ++ Empty项目。但组合项目文件夹不包括vcxproj和vcxproj.filter文件。由于我在Visual Studio中打开该解决方案时,文件结构已损坏。如何通过EnvDTE创建正确的Empty C ++项目?我在哪里可以找到C ++ Empty Project模板?

InitializeComponent();
System.Type type = System.Type.GetTypeFromProgID("VisualStudio.DTE.14.0");
Object obj = System.Activator.CreateInstance(type, true);
EnvDTE.DTE dte = (EnvDTE.DTE)obj;
dte.MainWindow.Visible = true; // optional if you want to See VS doing its thing

// create a new solution
dte.Solution.Create(@"C:\NewSolution\", "NewSolution");
var solution = dte.Solution;

 EnvDTE.Project project = solution.AddFromTemplate(@"C:\Program Files (x86)
 \Microsoft Visual Studio 14.0\Common7\IDE\ProjectTemplates\VC\General\
 sharedvcxitems\shared.vstemplate", @"C:\NewSolution\TestApp", "TestApp");

// save and quit
dte.ExecuteCommand("File.SaveAll");

dte.Quit();

1 个答案:

答案 0 :(得分:2)

通常我在私人文件夹中有一个.vcxproj模板和一个像你这样的程序,所以不要使用标准模板。

此外,标准VC模板文件夹可以更改,因此必须通过代码解析位置(除非您只编码自己的或已知的机器)。

在您的示例中,您的模板路径无效

C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ ProjectTemplates \ VC \ General \ s haredvcxitems \ shared.vstemplate

应该是: -

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ProjectTemplates\VC\General\sharedvcxitems\shared.vstemplate

编辑:打开或创建项目创建自己的模板,然后点击菜单File>Export Template