【发布时间】:2016-02-04 05:53:06
【问题描述】:
我有一个解决方案,其中包含大量使用 nmake 构建的项目。我正在尝试为 VS2012 编写一个扩展,它只是在 IDE 中设置的启动项目上调用构建,因为基本的 f5 构建活动项目通常不是启动项目。我设法通过从 EnvDTE.Solution 界面中查找所有项目,并将唯一名称与在 Solution.StartupProjects 集合中找到的名称进行比较,并利用了 Solution.SolutionBuild.BuildProject 函数来检索启动项目。但是,我的解决方案可以为win32和x64平台构建,并且该函数没有设置要构建哪个平台的方法,只能指定配置。最终结果是,无论我在 IDE 中设置什么平台,它总是构建 Win32 平台。如果我从 ActiveConfiguration 方法中检索 EnvDTE80.SolutionConfiguration2 接口,则表明 ActiveConfiguration 具有正确的平台。我是否错过了构建启动项目、使用 ActiveConfiguration 的特定项目或指定平台的方法的方法?
任何帮助将不胜感激。
【问题讨论】:
标签: c# visual-studio visual-studio-2012 vs-extensibility