使用Visual Studio 2005.
.sln或.vcproj文件(或其他任何地方)中是否有定义项目类型/子类型的内容?
编辑:我的意思是,当您创建项目时,首先选择一种语言(例如Visual C#),然后选择项目类型(例如Windows),然后选择子类型(例如控制台应用程序).
这些信息存储在VS文件中的哪个位置?
在项目XML文件中:
控制台应用包含:
Exe
WinForms应用程序包含:
WinExe
库(.dll)项目包含:
Library
并且不包含
ASP.NET和WCF项目包含:
{603c0e0b-db56-11dc-be95-000d561079b0};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc} Library
GUID可以确切地定义它是什么类型的项目.上面的内容取自ASP.NET应用程序.它们也存在于WCF项目中,翻转GUID可以欺骗Vis Studio在打开它时更改项目类型.
一些进一步的研究,我发现了这个:
信息:已知项目类型Guids的列表.
我的.sln文件包含:
Visual Studio 2005
项目("{ FAE04EC0-301F-11D3-BF4B-00C04F79EFBC }")="AddNumbers","AddNumbers.csproj","{2C81C5BB-E3B0-457E-BC02-73C76634CCD6}"
链接显示:
项目类型描述项目类型指南
Windows(C#){ FAE04EC0-301F-11D3-BF4B-00C04F79EFBC }
所以它是Windows C#,子类型是@ HardCode的回复.就我而言,它是"控制台应用程序".
.vproj文件定义项目类型,例如,以下定义了C++项目.
项目标记还包括编译器版本.