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

Как отказаться от решения от Visual Studio 2010 до Visual Studio 2005?

У меня есть огромное решение Visual Studio 2010. Я работаю с Visual Studio 2005, поэтому хочу конвертировать решение в нужную версию. В принципе, это переносимый код на С++, поэтому он должен компилироваться и на Visual Studio 2005. Изменение версии в файле *.sln не помогает, потому что формат *.vcxproj полностью отличается от старого формата *.vcproj.

Повторное создание решения вручную не является вариантом из-за его размера. Также могут быть некоторые флаги компилятора, не относящиеся к умолчанию, зависимости и т.д., О которых я не знаю (и я не могу просмотреть ВСЕ этот XML-хэш, который я не понимаю).

Уже существует связанный с этим вопрос о Как переопределить проект Visual Studio 2008 С++ до 2005 года. Однако предлагаемая утилита поддерживает не более Visual Studio 2008.

Любые предложения?

4b9b3361

Ответ 1

Это действительно полностью отстой, что каждая собственная среда IDE сегодня думает, что ей нужно создать свой собственный формат файла проекта. "Уважаемые разработчики IDE, просто используйте MakeFiles и создайте для него приятный графический интерфейс, чтобы и люди без знаний Makefile могли его использовать!" В VS6 было возможно по крайней мере возможно импортировать/экспортировать Make файлы, но не сегодня. И было возможно использовать nmake для автоматических сборок. Никакой IDE не нужно было устанавливать, просто инструментальную цепочку, которую можно было бы захватить простой проверкой без установки.

Теперь я использую CMake. Он бесплатный, он кросс-платформенный, он хорошо поддерживается в бесплатных IDE, таких как KDevelop, QtCreator и т.д. Он может генерировать проекты Makefile и Visual Studio. Таким образом, вы сохраняете только один источник проекта, файл CMakeLists.txt и можете работать с любой IDE. Отсутствие боли с различными версиями Visual Studio или с другими проприетарными форматами файлов проекта. Таким образом, вы можете создавать проекты VS для разработки, и вы можете генерировать Makefiles для сборки командной строки, используя nmake, как в старые добрые времена.

Кстати, гораздо проще изменить настройки в CMakeLists.txt, чем щелкнуть по различным диалоговым окнам графического интерфейса. Но это вопрос личных предпочтений.

Ответ 2

В моей работе была сделана утилита, которая использовала EnvDTE.dll и отсканировала файл vcproj и, возможно, все vcproj файлы в sln- файл. Он сравнивал все настройки с "шаблоном" и выдавал предупреждение или, возможно, обновлял настройку для корректировки значений. Мы использовали эту утилиту, чтобы убедиться, что параметры будут корректными и согласованными во всех проектах. Я еще не обновил утилиту до 2010 года из-за других приоритетов.

EnvDTE не сильно изменилось с Visual Studio 2008 до Visual Studio 2010. Возможно, можно создать простую утилиту, которая открывает файл vcxproj с помощью DTE100 и сохраняет его с помощью DTE90 или ранее.

Ответ 3

Самый простой способ - это, вероятно, создать новый проект в VS 2005 и использовать диалог добавления существующего элемента для добавления кода в проект. Я бы предложил использовать "Пустой проект" в качестве типа проекта, так что у вас нет много мусора, автогенерированного для вас, что вы все равно удалите.