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

EnvDTE.DTE create empty C++ project for Visual Studio 2015

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

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();

通常情况下,我在私人文件夹中有一个 .vcxproj 模板,其中包含您的程序,因此不要使用标准模板。

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

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

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

应该是:-

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

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