2009-09-15 161 views
22

有人可以简单向我解释Visual Studio解决方案文件(.sln)和项目文件(.vcproj)之间的区别。解决方案文件与Visual Studio中的项目文件

在我看来,打开任何一个在Visual Studio中打开正确的解决方案/项目。一个是另一个的超级集合吗?

注:我目前正在使用Visual Studio 2008处理从Visual Studio 2005中提出的项目(我相信)。

回答

20

解决方案是一组项目。如果您的软件需要多个项目,请使用解决方案。 I.E .:一个类库项目+一个Web应用程序项目。

1

解决方案文件通常由多个项目文件组成。

4

项目文件通常对应于单个模块:EXE或DLL或LIB。解决方案管理项目文件的集合。

4

解决方案是项目的集合。如果没有解决方案,Visual Studio就不能运行,所以如果你打开一个裸露的项目,它会自动生成解决方案(或者试图找到一个解决方案)。

1

一个解决方案可以包含零个或多个项目。一切都在项目中,因此具有零项目的解决方案除了解决方案属性外根本不包含任何内容。

Visual Studio会跟踪项目的使用位置,所以如果您打开一个项目文件,它会打开(IIRC)最后一个使用它的解决方案。

从头开始创建项目时,也会创建一个解决方案,但直到向其中添加其他项目时才会显示该解决方案。看起来您只有该项目已打开,但它实际上是一个包含已打开项目的解决方案。

2

具体的项目文件旨在包含将项目中的文件构建到exe或dll所需的数据。此文件由本地编译器或系统(如Team Foundation系统和服务器端构建代理)使用。

解决方案是一个客户端(IDE)构造,用于管理项目集合,实际上是集合了不同的构建定义和关联文件。

+2

这个问题已经回答(6年前),但欢迎堆栈溢出! :) – 2015-03-02 22:33:06

相关问题