我正在尝试使用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();
答案 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