Подтвердить что ты не робот

Файл решения против файла проекта в Visual Studio

Может кто-нибудь кратко объяснить мне разницу между файлом решения Visual Studio (.sln) и файлом проекта (.vcproj).

Кажется, я открываю один из них, чтобы открыть правильное решение/проект в Visual Studio. Является ли это супер-множеством другого?

Примечание. В настоящее время я использую Visual Studio 2008, работающую над проектом, который был перенесен из Visual Studio 2005 (я считаю).

4b9b3361

Ответ 1

Решение представляет собой набор проектов. Если вам нужно несколько проектов в вашем программном обеспечении, перейдите к решениям. I.E.: Проект библиотеки классов + Проект веб-приложений.

Ответ 2

Файл проекта обычно соответствует одному модулю: EXE или DLL или LIB. Решение управляет коллекцией файлов проектов.

Ответ 3

Решение представляет собой набор проектов. Visual Studio создается так, что он не может работать без решения, поэтому, если вы откроете пустой проект, он автоматически сгенерирует решение (или попытается найти его).

Ответ 4

В частности, файлы проекта предназначены для хранения данных, необходимых для создания файлов в проекте в exe или dll. Этот файл используется локальными компиляторами или системами, такими как Team Foundation и агенты сборки на стороне сервера.

Решения - это клиентская (IDE) конструкция, предназначенная для управления коллекциями проектов, которая фактически представляет собой набор различных определений сборки и связанных файлов.

Ответ 5

Файлы решений обычно состоят из нескольких файлов проекта.

Ответ 6

Одно решение может содержать ноль или более проектов. Все в проектах, поэтому решение с нулевыми проектами вообще не содержит ничего кроме свойств решения.

Visual studio отслеживает, где используются проекты, поэтому, если вы откроете файл проекта, он откроет (IIRC) последнее решение, в котором оно было использовано.

Когда вы создаете проект с нуля, также создается решение, но оно не отображается, пока вы не добавите к нему еще один проект. Похоже, у вас открыт только проект, но на самом деле это решение, содержащее открытый проект.