Ответ 1
support.microsoft.com/kb/2286556
спасибо Хансу, это обновление исправило мою проблему.
У меня есть проект развертывания установки в VS 2010. Проект отлично компилируется с интерфейсом GUI VS 2010, но в любое время, когда я пытаюсь скомпилировать его с помощью vs cmd (devenv.com), он сталкивается с этой ошибкой:
ERROR: Unable to update the dependencies of the project.
Обратите внимание, что в ошибке нет ни одной DLL (например, ошибка НЕ содержит "Зависимости для объекта" xxx не может быть определена ").
Пожалуйста, не говорите мне, чтобы очистить все файлы в этой настройке и начать с нуля - это не настоящее решение! У меня есть 5 проектов с этой точной ошибкой, и я не хочу переустанавливать их. Более того, это не обещает мне, что проблема не повторится в будущем.
Большое спасибо!
support.microsoft.com/kb/2286556
спасибо Хансу, это обновление исправило мою проблему.
Я использовал для восстановления этих проектов установщика с нуля, когда они перестали работать (по какой-либо причине), но я нашел намного более быстрый (и менее подверженный ошибкам) обходной путь. Меня устраивает. Возможно, это сработает для вас.
Он работает практически каждый раз для меня...
Джон
исправление не исправило проблему на моем компьютере (попробовали на двух компьютерах, перезагрузили весь этот джаз)
Вместо этого я использовал элемент управления источником, чтобы выяснить, что случилось с моим .vdproj.
Похоже, дополнительные коррумпированные записи добавляются в раздел "File"
.vdproj.
Предположим, что вы получаете сообщение об ошибке, например
ОШИБКА: невозможно обновить зависимости проекта. Невозможно определить зависимости для объекта "AutoMapper.DLL".
В вашем .vdproj найдите AutoMapper, и вы должны встретить несколько {}, где он используется.
Нормальный выглядит следующим образом:
"{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_263299FB43D185D41A44FBEE0253D3ED"
{
"AssemblyRegister" = "3:1"
"AssemblyIsInGAC" = "11:FALSE"
"AssemblyAsmDisplayName" = "8:AutoMapper, Version=1.1.0.188, Culture=neutral, PublicKeyToken=be96cd2c38ef1005, processorArchitecture=MSIL"
"ScatterAssemblies"
{
"_263299FB43D185D41A44FBEE0253D3ED"
{
"Name" = "8:AutoMapper.DLL"
"Attributes" = "3:512"
}
}
"SourcePath" = "8:AutoMapper.DLL"
тогда как поврежденный фрагмент не содержит имя dll (в этом случае AutoMapper.DLL) в разделе ScatterAssemblies
.
Удалите эту коррумпированную запись, то есть весь раздел, начиная с "{9F6F8455-..
до следующего фрагмента.
Я исправил это, отредактировав vdproj вручную и удалив разделы Hierachy и File, а затем восстановив vdproj
см.: this
Это сработало для меня:
Если существует файл блокировки some_project.vshost.exe, откройте свойства этого проекта в VS и снимите флажок "Включить процесс хостинга Visual Studio" при отладке. Затем удалите его. Теперь он должен строиться.
Это копируется из внешней ссылки @timB33, которая работает. Все ссылки на исправление MS выглядят разбитыми, так что это был единственный способ найти исправление без удаления и воссоздания проекта установки.
Я последовательно использовал этот метод, чтобы обойти эту ошибку вместо того, чтобы перестраивать мои проекты установки. Это относится как к проектам слияния модулей, так и к проектам установки. Вручную удалите данные в разделе "Иерархия и файлы" файлов проекта.
Открыть файл .VDPROJ
Найдите раздел "Иерархия". Удалите все, чтобы раздел выглядел так: "Иерархия" { }
Найдите раздел "Файл". Удалите все, чтобы раздел выглядел так: "Файл" { }
Обновить проект
Восстановите проект.
Вам может потребоваться повторно добавить выходы проекта, если что-то не хватает