如何从现有的Visual Studio项目中告诉Visual Studio项目类型

nzp*_*mad 100 visual-studio-2005

使用Visual Studio 2005.

.sln或.vcproj文件(或其他任何地方)中是否有定义项目类型/子类型的内容?

编辑:我的意思是,当您创建项目时,首先选择一种语言(例如Visual C#),然后选择项目类型(例如Windows),然后选择子类型(例如控制台应用程序).

这些信息存储在VS文件中的哪个位置?

Cod*_*ike 47

在项目XML文件中:

控制台应用包含:

<OutputType>Exe</OutputType>
Run Code Online (Sandbox Code Playgroud)

WinForms应用程序包含:

<OutputType>WinExe</OutputType>
Run Code Online (Sandbox Code Playgroud)

库(.dll)项目包含:

<OutputType>Library</OutputType>
Run Code Online (Sandbox Code Playgroud)

并且不包含

<ProjectTypeGuids>
Run Code Online (Sandbox Code Playgroud)

ASP.NET和WCF项目包含:

<ProjectTypeGuids>{603c0e0b-db56-11dc-be95-000d561079b0};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
<OutputType>Library</OutputType>
Run Code Online (Sandbox Code Playgroud)

GUID可以确切地定义它是什么类型的项目.上面的内容取自ASP.NET应用程序.它们也存在于WCF项目中,翻转GUID可以欺骗Vis Studio在打开它时更改项目类型.

  • @BugalugsNash是的,C#项目的.csproj文件. (3认同)
  • 项目XML文件是否意味着.csproj文件? (2认同)

nzp*_*mad 40

一些进一步的研究,我发现了这个:

信息:已知项目类型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的回复.就我而言,它是"控制台应用程序".

  • 这是已知GUID的另一个列表:https://www.codeproject.com/Reference/720512/List-of-Visual-Studio-Project-Type-GUID (2认同)

小智 10

  1. 右键单击解决方案的项目。
  2. 打开属性 -> 应用程序选项卡。
  3. 在右侧,您可以看到“输出类型”,它定义了现有解决方案的项目类型。


Aar*_*ela 5

.vproj文件定义项目类型,例如,以下定义了C++项目.

<VisualStudioProject
   ProjectType="Visual C++"
Run Code Online (Sandbox Code Playgroud)

项目标记还包括编译器版本.