2010-09-21 2 views
12

У меня есть проект VS (сделанный кем-то еще), и когда я пытаюсь открыть его в Visual Studio 2008, я получаю следующее сообщение об ошибке:Visual Studio не откроет файл решения

«Выбранный файл является файлом решения, но был создан новой версией этого приложения и не может быть открыт »

Я бы подумал, что VS совместим с обратным. Есть ли способ открыть это?

+0

Существует еще один способ для этой проблемы [Вы можете попробовать это] [1] [1]: http://stackoverflow.com/questions/12143383/converting-vs2012-solution-to- vs2010? answertab = votes # tab-top –

ответ

16

VS назад совместим, да - вы можете открыть файл решения VS 2005 в VS 2008, например. Это не forward совместимый хотя - предположительно, это решение было создано кем-то с VS 2010. EDIT: Согласно комментариям, с VS2010 SP1 вы можете открыть VS2012 решения. Я сам этого не проверял.

К счастью, хотя файлы решений несовместимы, я считаю, что вы должны иметь возможность создать новое решение в VS 2008 и добавить существующий проект файлов, созданных с 2010 года, при условии, что они не использовали никаких VS2010-специфические функции (либо в структуре проекта, либо в самом коде). Если код нацелен на .NET 4, вам может потребоваться настроить файл проекта, чтобы перенастроить его на .NET 3.5.

Вы можете увидеть предупреждение об этом (версия неизвестных инструментов или что-то в этом роде), но это может очень хорошо работать. У меня есть ряд проектов, у которых есть отдельные решение файлов для VS2008 и VS2010, но которые используют тот же проект файлов.

+0

спасибо за ответ. Этот проект имеет БОЛЬШЕ количество файлов проекта. Было бы проще получить VS 2010? – 109221793

+0

@TaraW, кажется, что многопользовательский выбор csproj-файлов будет намного меньше, чем установка версии VS2010. Для остальных 2010 год, конечно, неплохая идея. –

+0

@TaraWalsh: Если получение VS2010 является опцией, то я все равно сделаю это. Это лучше, чем VS2008, и вы получите новые функции C# 4/VB10, .NET 4 и т. Д. –

35

Вы можете редактировать файлы sln и csproj/vbproj вручную и попробовать таким образом, я использовал этот метод без побочных эффектов. В SLN файл первые строки для VS2010 будет сказать

Microsoft Visual Studio Solution File, Format Version 11.00 
# Visual Studio 2010 

и для VS2008 решения:

Microsoft Visual Studio Solution File, Format Version 10.00 
# Visual Studio 2008 

Кроме того, в файле по проекту 2010 вы можете найти раздел, как

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" /> 

, который необходимо будет изменить как

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" /> 

Только с этими двумя типами изменений я смог открыть решение & проектов с VS 2008. Конечно, могут возникнуть другие различия, но если у вас есть время, вы всегда можете использовать метод try/fail, пока не сможете управлять им.

+2

Подтверждено как работающий для VS2012 -> переход VS2010. Однако модификация '' не была необходимой. –

+1

Подтверждено, работает для VS13 -> 10. Как и сообщение выше, не требуется. – triunenature

+0

таким образом я успешно прошел переход 2008 -> 2005. Мне также пришлось изменить файл '.vcproj' (xml), атрибут из' Version = "9.00" 'to' Version = "8.00" '. – n611x007

3

Решение:

Шаг 1: Перейдите к местоположению проекта, где в рамках проекта. sln файл, а затем щелкните правой кнопкой мыши по нему, выберите «Свойства». Un проверить «Только для чтения», как показано ниже:

Шаг 2: Снова перейдите в место, где находится проект. sln, а затем щелкните правой кнопкой мыши по нему, чтобы открыть его с помощью блокнота и изменить файл «Microsoft Visual Studio Solution File, Format Version 12.00» на «Файл решения Microsoft Visual Studio, формат версии 11.00» в файле.

+0

отличный ответ, –

 Смежные вопросы

  • Нет связанных вопросов^_^