Я открыл vs2010 решение vs2012, но не делал никаких преобразований с 2008 по 2010 год. Таким образом, мое решение по-прежнему остается таким же, как 10 ярлыков. когда я делаю новое решение, конечно, на нем есть 11 ярлыков. У меня нет проблем с этим, но мне любопытно. Есть ли разница? если да, то как конвертировать в решение vs2012?
Visual Studio 2012 не конвертирует решение vs2010?
Ответ 1
Есть некоторые исключения, но в основном вы сможете открыть те же файлы проектов и файлов решений как в VS2012, так и в VS2010 SP1.
VS2012 может конвертировать проекты, когда вы их сначала открываете, но изменения (за исключением отмеченных в документе) обратно совместимы с VS2010 (т.е. с использованием условных обозначений, где необходимо применять только к любой версии при загрузке). Большинство типов проектов будут оставлены совершенно нетронутым, хотя.
Ответ 2
Мне удалось "преобразовать" файл решения, чтобы изменить строку, содержащую "# Visual Studio 2010", на "# Visual Studio 2012" в файле .SLN.
Ответ 3
Ручное редактирование файла решения не требуется или рекомендуется. Просто откройте решение VS2010 в VS2012, щелкните левой кнопкой мыши по решению (в самой верхней части Solution Explorer), затем используйте File | Сохранить как для перезаписывания исходного файла. Это эффективно преобразует файл решения VS2010 в файл решения VS2012.
Ответ 4
Это о совместимости Visual Studio 2012
Если вы создали свои активы в Visual Studio 2010 с пакетом обновления 1 (SP1), многие из них будут загружаться и запускаться в Visual Studio 2012 без каких-либо дальнейших действий с вашей стороны.
Многие активы снова откроются в Visual Studio 2010 с пакетом обновления 1 без каких-либо проблем, даже после того, как вы откроете эти ресурсы в Visual Studio 2012
Ответ 5
Для проектов С++ это имеет значение, поскольку компилятор 2012 года (VC11) будет использоваться только для проектов, которые явно 2012, а не для проектов 2010, открытых в VS 2012. Некоторые улучшения С++ 11 доступны с компилятором VC11, но не с VC10 (см. этот SO-ответ для резюме), в том числе:
- Диапазон значений для циклов
- Новые стандартные заголовки библиотек (атомные, мьютексы, потоки,...)
- Меньшие размеры контейнеров стандартной библиотеки
- (И больше, чтобы следить, когда в 2012 году CTP доставляется на VS 2012)
Для преобразования из проекта VS 2010 в VS2012 нет необходимости вручную редактировать файл решения или "Сохранить как" по существующему проекту. Вместо этого:
Если вы отклоните обновление при первом запросе, вы можете обновить проект позже, открыв меню Проект и выбрав Обновить проекты VС++.... [вверху параметры меню]
От MSDN " Как обновить проекты Visual С++ до Visual Studio 2012"
(Эта страница была переведена с помощью @Joachim Ссылка MSDN, но я хотел бы получить ответ здесь на SO, так как ряд других ответов предложил ручные обходные пути вместо этой функции VS 2012)
Ответ 6
В моем случае у меня был материал Visual Source Safe (мой проект был создан с Visual Studio 2003/2005, да, очень старый!)
Как только я вручную удалил материал VSS, преобразование удалось. PS: Я знаю это о VS2010, но, возможно, это помогает другим.
Ответ 7
Вы можете преобразовать проект из VS2010 в VS2012, выполнив следующие действия:
-
Добавьте проект 2010 в решение VS2012, щелкнув правой кнопкой мыши по вашему решению в обозревателе решений и выберите Добавить → Существующий проект...
-
Проект появится в решении и будет иметь (Visual Studio 2010) добавление к его имени.
-
Щелкните правой кнопкой мыши по добавленному проекту и выберите "Свойства".
-
В области "Свойства конфигурации" → "Общие" измените параметр в поле "Набор инструментов платформы" на Visual Studio 2012 (v110)
-
Повторите для каждого типа конфигурации, например. Отпустите и отлаживайте.
Ответ 8
Я столкнулся с этим вопросом во время поиска для решения конкретной проблемы: MSBuild не смог выполнить цель публикации для решения VS2012, которое начало работать в VS2010 при вызове из командной строки (в частности, через TeamCity):
error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Windows Azure Tools\2.3\Microsoft.WindowsAzure.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
MSBuild искал цели Azure SDK 2.3 в местоположении VS10 (C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Windows Azure Tools\2.3\Microsoft.WindowsAzure.targets). Причина объясняется Сайедом Ибрагимом Хашими в сообщении , и, как я понял, это сводится к некоторым решениям, которые они приняли, предоставляя возможность перекрестной версии совместимость файлов решений. Решение было простым: добавьте свойство VisualStudioVersion к вызову MSBuild, примерно так:
msbuild.exe MyAwesomeWeb.sln /p:VisualStudioVersion=11.0
Практически говоря, это переопределяет следующее в каждом файле csproj:
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
Предположительно, вы можете получить тот же результат, отредактировав все это вручную, чтобы заменить 10.0 на 11.0, но это может нарушить обратную совместимость - я не пробовал. Я также не пробовал обновление VS2013, чтобы узнать, не исчезла ли эта проблема.
Итак, чтобы обернуть это, ответив на вопрос: да, перед тем, как вы "конвертируете" (используя любой из методов, предлагаемых другими респондентами), есть некоторые отличия, и некоторые отличия остаются после этого.
Ответ 9
Это немного отличается, но по тем же линиям, поэтому в случае, если это кому-то помогает:
Я загружал проект, где он выглядел так, как будто он загружался, а затем продолжал показывать все проекты как недоступные. В отчете о миграции не было ошибок. Я пытался многократно перезагружать решение и проекты, используя различные методы, включая предложения здесь.
Наконец, я нашел параметр "Разрешить ошибки", щелкнув правой кнопкой мыши на решении в обозревателе решений. VS снова прошел процесс загрузки, и он сработал; Нет проблем.
Я не знаю, что это было по-другому в то время, но, видимо, это имело значение.
Ответ 10
это просто просто отредактировать файл .sol измените версию на 11
как это
Файл решения Microsoft Visual Studio, формат версии 12.00
Visual Studio 2012