Что делает Visual Studio 2010 перед вызовом msbuild? - PullRequest
7 голосов
/ 04 августа 2011

У меня проблема с Visual Studio, которая не вызывает msbuild для фактического построения моего решения.Вызов msbuild из командной строки приводит к правильной сборке, но в Visual Studio запуск сборки приводит к сообщению «все обновлено».Компиляция файла .cpp вручную, кажется, частично или полностью решает проблему.

Перезапуск VS2010 не решает проблему, поэтому я чувствую, что VS2010 должен где-то записывать свою собственную информацию о зависимостях.Под информацией о зависимостях я подразумеваю, какие файлы на самом деле требуют сборки, AKA, какие файлы были изменены с момента последней успешной сборки.

Выполняет ли VS2010 свою собственную проверку зависимостей перед вызовом msbuild?Где хранится эта информация?

Ответы [ 3 ]

1 голос
/ 29 августа 2011

Чтобы заставить сборку происходить из графического интерфейса Visual Studio, вы можете выбрать «Перестроить все». Это приведет к компиляции всех ваших исходных файлов.

Проблема с неработающими обычными сборками может быть связана с неправильными настройками часов на вашем ПК. Убедитесь, что ваши системные часы правильные, включая часовой пояс. Затем выполните «чистый» проект и попробуйте собрать его снова.

0 голосов
/ 29 августа 2011

Я иногда видел такое поведение, хотя не могу объяснить, как оно повреждено.

Попробуйте удалить все промежуточные файлы: все в каталогах Debug и Release, плюсфайлы имен проектов типов .suo, .ncb и .aps.Затем восстановите все.

Если вы испытываете то же поведение, что и я, это приводит к нормальной работе VS на некоторое время - несколько недель или 50-100 сборок (в зависимости от того, что наступит раньше).

0 голосов
/ 12 августа 2011

Мой папа говорит проверить вашу папку obj и вычистить ее. VS2010 видит, что там есть вещи, поэтому он предполагает, что нет ничего нового для постройки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...