2014-12-31 3 views
0

Я пытаюсь перенести проекты Visual Studio 2008 в Visual Studio 2013 из большого решения (состоящего из 100+ проектов). Когда я открываю проекты с VS 2013, он открывает инструмент «Одностороннее обновление», и я нажимаю «Обновить». Но для некоторых проектов программа не отвечает. Он создает только файл .vcxproj по умолчанию, но не полностью преобразованный проект. Это фиктивный файл проекта, и когда он открыт, ничего не появляется в проводнике проекта. Решение конверсии останавливается, особенно в этих проектах, и происходит замораживание. Когда я пытаюсь преобразовать эти проекты по отдельности, он иногда конвертируется в проект 2013 года, в некоторых проектах это не так. Когда я убираю проекты, которые вызывают проблемы, конверсия продолжается еще несколько раз, но снова замораживается в другом проекте. Я проверил страницы Microsoft и другие проблемы с конверсией здесь, ничего плохого в версиях рамок моего проекта, я также не сталкивался с заменой копии файла при преобразовании проекта. Для образца: Это заголовок моего проекта, который не конвертируется и вызывает VS 2013 замерзнуть в процессе преобразования:Миграция с Visual Studio 2008 до 2013 с большими решениями

<VisualStudioProject 
    ProjectType="Visual C++" 
    Version="9,00" 
    Name="GlobalDeployment" 
    ProjectGUID="{AC9CBDA0-2504-4D84-9361-E2F112F56A29}" 
    RootNamespace="GlobalDeployment" 
    Keyword="MakeFileProj" 
    TargetFrameworkVersion="196613" 
    > 
And this is the one which has no problem in converting : 

<VisualStudioProject 
    ProjectType="Visual C++" 
    Version="9,00" 
    Name="CommonUtilities" 
    ProjectGUID="{1FB295FC-DE93-42D1-8AC8-6D51DF017C74}" 
    RootNamespace="CommonUtility" 
    Keyword="Qt4VSv1.0" 
    TargetFrameworkVersion="196613" 
    > 

Я также проверил кварты против надстройки, но я преобразовал Qt проектов до без проблем. Я проверил пути, объявленные в файле проекта. Они верны. Так что же может быть источником этой заморозки? Thanks

+1

Проект, который не конвертируется, имеет версию = "9.00" (с десятичным идентификатором периода). Проект, который преобразует, имеет Verison = «9,00» (с десятичным индикатором запятой). Это опечатка или они действительно используют разные десятичные маркеры? – ma499

+0

Да, это была опечатка моего испытания в изменении версии моего проекта, чтобы увидеть его влияние на миграцию. На самом деле это не имеет значения, VS 13 все еще зависает в процессе миграции. –

+0

Я заметил, что место для замораживания конверсии является каким-то случайным, поэтому может возникнуть проблема с VS 2013, а не с файлами проекта. –

ответ

0

Проблема связана главным образом с использованием «Макросов пользователя», который содержит «.». персонажи. У меня были пользовательские макросы типа «root.dir» в моих проектах в VS2008, а VS2013 просто не принимает определение макросов пользователя. Когда я заменяю пользовательские макросы, используемые в файле .vcproj со словами, не содержащими '.' характер, как правило, процесс миграции завершен. Если это не решит вашу проблему, попробуйте изменить файлы .vsprops вашего проекта, содержащие «.». символов в своих пользовательских макросах. Если вы использовали пользовательские макросы, содержащиеся точки в вашем файле .vsprops, то VS2013 migrator изменяет его на фиктивный .prop-файл. Иногда он не может генерировать файл prop и миграция замерзает. Итак, когда решение многих проектов пытается конвертироваться, то, если некоторые из проектов содержат пользовательские макросы, которые в VS2013 не разрешены, в некоторых случаях миграция замерзает.

+0

VS2013 также не принимает пользовательские макросы, введенные из окна свойств –

+0

Также вы можете удалить файлы vsprops, которые не принимаются VS 2013 и продолжить миграцию. –

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