Почему возникает ошибка при создании проекта установки?
При проверке произошла ошибка. HRESULT = '80004005'
Почему возникает ошибка при создании проекта установки?
При проверке произошла ошибка. HRESULT = '80004005'
Эта ошибка связана с ошибкой зависимости. Я удалил все ссылки на мой основной проект и добавил их снова. Теперь он компилируется OK!
Один проект в решении имел ToolsVersion="4.0"
(в файле .csproj), изменил его на ToolsVersion="3.5"
и установил строчные сборки проекта.
Обе причины, которые я нашел, уже находятся в других ответах, но они находятся в отдельных ответах и не полностью объяснены. Таким образом, мы надеемся, что это объединит возможности и даст хорошие средства для отладки.:)
Общий разум
Моя проблема не была ошибкой зависимости. Однако, похоже, это общая причина. Итак, в основном, вам нужно проверить файл При проверке произошла ошибка. HRESULT = '80004005'.
Альтернативная причина
Однако моя проблема связана с версией Visual Studio. Итак, если ваши зависимости действительны, и вы все еще получаете эту проблему, тогда вы разрешаете это, если это проблема с VS2010 .
В принципе, если вы запустите MSBuild и увидите это предупреждение:
Файл проекта содержит ToolsVersion = "4.0", который не поддерживается эта версия MSBuild. Рассмотрение проекта, как если бы оно ToolsVersion = "3,5"
Тогда проблема в версии для Visual Studio. Это означает, что один проект был открыт или создан в Visual Studio 2010, а затем сохранен или добавлен в существующее решение 3.5. Я просто искал все файлы в своем проекте для ToolsVersion="4.0"
и обнаружил оскорбительный файл .csproj
, открыл его в текстовом редакторе и вручную изменил 4.0
на 3.5
.
Сегодня я столкнулся с этой проблемой. Решение в моем случае? Перезапустите Visual Studio 2008.
В моем случае у моего решения (VS2008) был проект, на который также ссылалось другое решение (VS2010). В решении VS2010 я обновил проект до .NET 4.0. Когда я позже понял, что проект также использовался в другом решении, я понизил его до .NET 3.5. По какой-то причине все, казалось, было правильно изменено в файле csproj, кроме одного места, которое упоминается здесь: Ошибка в настройке проекта HRESULT = '80004005'
Я знаю, что это уже разрешено где-то в другом месте, но я хотел пролить свет на это из другого угла проблемы.
Хотя простое удаление и повторное добавление зависимостей проекта будут работать во многих случаях, важно отметить, что:
Сообщение об ошибке "Ошибка при проверке. HRESULT = 80004005". обычно происходит, когда проект ссылается на другой проект, который не добавляется в currect [sic] решение. Проект установки поддерживает только проекты зависимостей внутри одного и того же решения. 1
Я потратил огромное количество времени на это сам, хотя ни одно из вышеизложенных не работало. Но я нашел другое решение с взломом реестра, вам нужно добавить новое значение DWORD (EnableOutOfProcBuild
) (0
) в HKCU\SOFTWARE\Microsoft\VisualStudio\14.0_Config\MSBuild\EnableOutOfProcBuild
Примечание: это для Visual Studio 2015
В моем случае я установил Visual Studio 2010 вместе с Visual Studio 2008. Мой проект установки, когда он был открыт в Visual Studio 2008, дал ту же ошибку, но был в порядке в Visual Studio 2010.
Если скопировать на другой компьютер, который не имел Visual Studio 2010, но имел Visual Studio 2008, тогда он скомпилировался.
Я установил Visual Studio 2010 и преобразовал решения в эту версию. Из-за проблем с производительностью я поменял свои решения на Visual Studio 2008. Теперь все было лучше, но я получил ошибку, когда попытался скомпилировать проект установки. Я понял, что у меня был проект тестирования Visual Studio 2010 в моем решении, поэтому все, что мне нужно было сделать, - это выгрузить проект тестирования и снова создать проект установки.
Сводка: выгрузите любой проект Visual Studio 2010 в решение.
Надеюсь, это поможет.
Я прочитал этот ответ из другого сообщения в Stack Overflow, и он сработал у меня.
Откройте файл проекта установки (.vdproj) в Notepad (или любой другой текстовый редактор). Удалите эти строки в начале файла .vdproj:
"SccProjectName" = "8:"
"SccLocalPath" = "8:"
"SccAuxPath" = "8:"
"SccProvider" = "8:"
Сборка еще раз - ошибка исчезла. Эта ошибка не помешала мне развернуть, построить, отладить (или anyting) мой проект; это меня просто раздражало. И это произошло, даже если я установил все проекты для сборки в текущей конфигурации, а проект установки - не.
Я знаю, что это старые старые новости, но я не говорю конкретно о конкретной проблеме и решении (насколько я могу судить, если я пропустил это, извиняюсь).
У меня была такая же проблема. Он не скомпилировал мой проект, но не имел ошибок. Все, что я мог видеть, это "Сбой сборки". Я открыл файл "Выход" (нажмите "Вид" → "Вывод" в меню), и он рассказал мне, какая именно ссылка (в моем случае .dll) вызывает проблему.
Я удалил и воссоздал ссылку, и она изменила имя ссылки из Microsoft.Office.Core(которая была только 32-разрядной версией) на "ОФИС". Тогда все отлично поработало. - Обязательно запишите путь к файлу, на который вы ссылаетесь в окне свойств... Мой новый путь был абсолютно таким же, но имя ссылки изменилось в любом случае.... все еще царапает мне голову...
Итак, мораль этой истории... Когда вы не получаете ошибок и ваша сборка не работает, проверьте вкладку "Выход", и она может помочь.