我已经掌握了一个IVsHierarchy对象,我想要的信息是项目类型(WinForm、WPF、ASP等)、语言(C#、VB、F#等)。以及调试配置(调试、发布、x86、amd64等)。获得这些信息的可靠方法是什么?
我可以从EnvDTE.Project中获得一个IVsHierarchy,它包含CodeModel.Language、种类和ConfigurationManager.ActiveConfiguration等属性,但我不确定这些属性是否正确。例如,可能的语言值为下面是
vsCMLanguageCSharp视觉C#常量
vsCMLanguageIDL微软IDL常量。
vsCMLanguageMC视觉C++常量
vsCMLanguageVB Visual常量。
vsCMLanguageVC视觉C++常量
这似乎是一个非常有限的列表,像F#这样的语言在哪里?
更糟糕的是,对于项目类型,唯一可能的值是prjKindCSharpProject、prjKindVBProject、prjKindVSAProject。是否有可能获得更详细的信息,如C# ASP,VB等?
发布于 2014-01-21 21:08:49
嗯,http://www.mztools.com/articles/2008/mz2008017.aspx和如何使用VS包在解决方案资源管理器中获取选定项目的项目类型指南给了我一个关于如何获得项目类型的相当好的想法,我也可以从中找出语言类型。CodeModel似乎是获取它的错误方法。
https://stackoverflow.com/questions/21191988
复制相似问题