Visual studio произошла неизвестная ошибка
Решили мы как-то перевести свой проект на Visual Studio 2015 — там ведь столько захватывающих фич! Вчера вот только решили, а уже сегодня утром я запустил её инсталлятор. Небо было безоблачным, ничто не предвещало беды. Ну что, в самом деле, может пойти не так? Сколько уже этих Visual Studio переставлено — не счесть (я, помнится, ещё 6.0 когда-то ставил). Кто бы мог подумать, что эта тривиальнейшая задача может вылиться в весьма неожиданный забег по граблям длинной почти в целый рабочий день.
Хм. Не поставился значит, Team Explorer и ещё пару минорных пакетов. Ну ок. Закрываем, переустанавливаем. Не помогает. Удаляем студию, перезагружаемся, устанавливаем — та же ошибка. Лезем в Гугл с вопросом об ошибке установки Visual Studio 2015 на этапе инсталляции компонента Team Explorer и понимаем, что проблема это массовая — десятки ссылок с тем же описанием:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17
Отвечают на все эти вопросы специалисты первой линии техподдержки Microsoft, советы которых сводятся к «отключите антивирус», «проверьте чексуму образа со студией», «проверьте диск на ошибки». Ничего из этого, конечно, не помогает, о чём им и рассказывают, после чего они пропадают и больше не отвечают. Очень дружелюбная пользовательская поддержка, ничего не скажешь.
Ну что же, пора включать голову, брать в руки инструменты и разбираться. Поехали.
Итак, всё что у нас есть, это входная точка ошибки — проблема с Team Explorer. И ссылочка на лог-файл на приведённом выше скриншоте. Ну ок, давайте пойдём почитаем что там лог-файл думает о нашей ошибке.
Всё, что можно понять из этого лога, это то что компонент ставился-ставился, да что-то не поставился. Бывает, мол, чего уж там. Ну, спасибо большое за информацию!
Ладно, давайте зайдём с другой стороны. Team Explorer это (как и почти всё в современных версиях Visual Studio) — VSIX (компонент, расширение). Ставится отдельно от ядра студии специальной программой VSIXInstaller.exe, которая живёт в C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE и умеет при установке этих самых VSIX-компонентов писать во временную папку (ну, ту, которая %TEMP%) логи о том, как всё прошло. Идём в %TEMP%, находим по времени ошибки из лога выше файлик, соответствующий установке Team Explorer. Вот он:
Ну, тут уже побольше всякого интересного написано, конечно. Нас интересует первый момент, когда что-то пошло не так. Вот он:
26.11.2015 17:31:06 - System.TypeInitializationException: The type initializer for 'VSIXInstaller.SupportedSKUs' threw an exception. ---> System.BadImageFormatException: Could not load file or assembly 'Microsoft.VisualStudio.Settings.14.0.dll' or one of its dependencies. is not a valid Win32 application. (Exception from HRESULT: 0x800700C1)
Хм, произошла ошибка при попытке загрузить сборку Microsoft.VisualStudio.Settings.14.0.dll. Первой моей мыслью было то, что студия как-то запуталась в порядке установки своих компонентов и пытается использовать при установке что-то, что ещё не установилось куда надо. Так, есть у нас в системе такая библиотека?
Оказалось — есть. Лежит в GAC, там где ей и положено лежать:
Так, что же получается? Сборка есть, она находится там, где нужно, но не загружается. Может быть, битая? Берём IL DASM, загружаем — всё ок.
Может быть умельцы из Microsoft сумели написать такой инсталлятор, у которого иногда получается не найти сборку в GAC? Берём Process Monitor, добавляем в него фильтр на открытие файлов и снова запускаем инсталлятор студии. Доходим до ошибки, смотрим логи.
Ага, vcruntime140.dll загружается. Это redistributable-библиотека от Visual Studio 2015. Ну, она-то точно должна была поставиться на одном из первых этапов установки! Но давайте проверим, чем уже чёрт не шутит.
Проверка раз — в списке установленных программ:
Проверка два — в папке C:\Windows\SysWOW64\:
Проверка три — это, собственно, «SUCCESSS» в логе Process Monitor:
Последняя проверка — вообще железобетонный аргумент: видите, поискали, попробовали открыть, открылось успешно — значит файл найдён. Всё, подозрения снимаются, идём дальше. Так, какую-же библиотеку инсталлятор VSIX пытается подгрузить следующей по логами Process Monitor?
Как это опять vcruntime140.dll уже в другой папке?! Получается, найдя vcruntime140.dll в папке C:\Windows\SysWOW64\ и успешно её открыв (а мы знаем что так и было по логам выше!) загрузчик зависимостей всё-же почему-то счёл её недостаточно хорошей и отбросил. Как же так?! Это что — не майкрософтовская библиотека? Смотрим свойства:
Да нет, нормальная библиотека. Почему же не загрузилась? Давайте посмотрим на неё внимательнее. Для этого в составе любой версии Visual Studio есть отличная утилита dumpbin. Запускаем её с вот такими ключами:
и смотрим на результаты:
Подождите-подождите… А почему это ты, библиотечка, 64-битная?! Ты же лежишь в папке C:\windows\SysWOW64\, где вообще-то место только 32-битным библиотекам! А ну-ка давайте посмотрим, что же тогда лежит в C:\Windows\System32?
А то же самое (кто не верит в размер — можете проверить каким-нибудь WinMerge, они идентичны). Вы уже уловили, в чём суть? Ошибка закралась в инсталятор Redistributable-компонентов, входящий в инсталятор Visual Studio 2015 — он просто ставит 64-битные версии рантайм-библиотек и в папку для 64-битных библиотек (C:\Windows\System32) и в папку для 32-битных (c:\windows\SysWOW64\). В итоге при дальнейшей попытке использования 64-битной версии всё будет ок, а вот при попытке загрузки 32-битной версии будет то, что мы увидели при установке Team Explorer — загадочные ошибки вообще без упоминания библиотеки vcruntime140.dll и Redistributable-пакета. И делай, что хочешь.
А что же мы хотим делать? А удалить x86-часть Redistributable-пакета Visual Studio 2015, скачать её отдельно с сайта Microsoft и переустановить. Сюрприз — на сайте Microsoft версия правильная, она установит 32-битную версию библиотеки в C:\windows\SysWOW64, после чего можно перезапустить установку Visual Studio 2015 и она успешно дойдёт до конца!
Осталось как-то объяснить начальству почему это я целый день устанавливал Visual Studio, если с этим дети в третьем классе за час справляются. В общем-то ради этой цели и была написана данная статья, а уж зачем вы её прочли — я не знаю :)
При успешной установке после запуска приложения Visual Studio 2017 появляется предупреждение "Неизвестная ошибка" (показано ниже).
ОБНОВЛЕНИЕ: После удаления и переустановки Force
ОТВЕТЫ
Ответ 1
удалите эту папку (или аналогичную):
- имя папки 15.0_db2a872f может отличаться на вашем компьютере, например. 15.0_XXXXXXX
- найдено в журнале запуска vs, что обработка Progression_NativePackage_Component_x86.pkgdef завершена, указывая на несовместимую установку расширения
Ответ 2
Мне нужно было переименовать (если вы его не запустили)/удалить следующий файл:
После перезапуска Visual Studio 2017 вам может понадобиться снова активировать Tools or Extensions .
Ответ 3
Проверьте, установлен ли на компьютере агент виртуализации Symantec Workspace. Удаление продукта из приложения\удаление программ фиксировало неизвестную ошибку при запуске VS 2017.
Вот деталь продукта. Код продукта: Код пакета: Дата установки: 2015.05.21 Версия: 6.4.1266 Издатель: Symantec
Ответ 4
Я запускал его как Admin, и после этого он как-то загрузился. Я получал такую же ошибку даже после того, как все пакеты и SDK были установлены до тех пор, пока я не запустил ее как admin.
В принципе, просто перейдите к ярлыку в Start или в .exe в файлах, затем щелкните его правой кнопкой мыши и запустите в качестве администратора или измените его в свойствах. Tbh, это похоже на временное исправление, и я действительно хотел бы узнать реальный источник проблемы, но пока мне не нужно повторно устанавливать и исправлять снова и снова.
Одинаковая версия: Visual Studio Community 2017, установленная с помощью запуска
Ответ 5
У меня такая же проблема после обновления VS 2017 Enterprise до сборки 26228.9.
Фиксация возможна путем удаления этой папки:
где xxxxxxxx - это некоторое шестнадцатеричное число.
НО ПОСЛЕ ТОГО, ЧТО ВЫ ПОТЕРЯЛИ ВСЕ НАСТРОЙКИ, которые вы выполнили при установке VS 2017 (кроме устройства с ключом продукта).
Извините, что я должен сказать это, но:
Может быть, теперь будет лучше застрял на VS2015. Поскольку MS еще не имеет действительно полноценной сборки VS на данный момент.
VS 2017 все еще готов к первым экспериментам, а не к реальной работе.
Это такая же история, как и когда было опубликовано VS2015. (после нескольких дней прекратить работу).
Ответ 6
Я установил его так же, как niclar, удалив папку 15 _. *. Однако представляется, что переименование privateregistry.bin имеет тот же эффект с меньшими проблемами.
Как упоминалось Torbjorn, ReSharper и другие расширения могут испортиться, однако переустановка не требуется.
Просто перейдите в Инструменты > Расширения и обновления. > Прокрутите список установленных расширений > Включите те, которые должны быть включены.
Ответ 7
У меня есть бок о бок установка с VS2015. После открытия и закрытия VS2015 один раз, VS2017 снова начинает нормально. Странно, но помог в моем случае.
Ответ 8
Мне нужно было удалить или переименовать ApplicationPrivateSettings.lock в папку C:\users \AppData\Local\Microsoft\VisualStudio\15.0_c31ecfb9.
Ответ 9
Я столкнулся с этой проблемой с помощью Visual Studio Professional когда он не работает как администратор. (Он работал нормально как администратор) Я использовал решение Niclar для удаления папок.
Ответ 10
Я обнаружил ту же проблему после установки расширения и удаления папки "C:\Users\USER_NAME\AppData\Local\Microsoft\VisualStudio\15.0_xxxxxxx", которая решила мою проблему.
Помогите разобраться с проблемой. Скачиваю инсталятор VS 2019 Community. Идет процесс скачивания файлов(около 70Мб), потом установка. Весь процесс занимает около трех минут. Я прикрепил скрин. Диалогового окна с выбором компонентов студии не появляется. В папке Program Files(x86) создалась папка Microsoft Visual Studio.
Стоит Виндовс 7 Домашняя расширенная SP1.
Помощь в написании контрольных, курсовых и дипломных работ здесь
После установки Visual Studio 2019 Community ошибка
Здравствуйте! Помогите разобраться. После установки visual studio 2019 community на Windows 7.
Не устанавливается Visual Studio Community
После переустановки Windows не могу установить Visual Studio. На компьютере установлена Windows 7.
Не устанавливается Visual Studio Community 2013
До этого стоял 2015,но пришлось снести по одним обстоятельствам и поставить более старую версию.
Не устанавливается Visual Studio Community 2015
Ставил уже раз 10 VS 2015, сносил, ничего не помогает, при последней установке, выдает: .
Такая же беда! Найду решение отпишусь
Добавлено через 13 минут
Пока права админа не помогли. Самое странное что на версию x86 ставилась отлично
У меня Win7 Ultimate SP1 x64. Купил лицензию у самой MS
Обновить винду говорят. У меня просто такая же проблема.
Что необходимо сделать перед установкой Visual Studio?
Установщик Visual Studio Installer обеспечивает установку средств, пакетов и SDK, необходимых для выбранных рабочих нагрузок и компонентов.
Чтобы свести к минимуму риск несовместимости и исключить ошибки во время установки, рекомендуем проверить готовность компьютера к установке Visual Studio с помощью этого краткого контрольного списка.
Проверьте версию операционной системы и примените последние обновления Windows: См. системные требования для Visual Studio 2019 и Visual Studio 2017. Среда Visual Studio требует как минимум Windows 7 с пакетом обновления 1 или более поздней версии и оптимизирована для работы в Windows 10.
Перезагрузите компьютер перед началом установки Visual Studio: Перезагрузка гарантирует, что ожидающие установки или обновления компоненты не будут препятствовать установке Visual Studio.
Перед установкой Visual Studio убедитесь, что на диске SystemDrive достаточно места. Необходимый объем свободного места для установки см. в статье Требования к системе для семейства продуктов Visual Studio 2019. Если вам нужно больше места, запустите приложение для очистки диска Windows.
По вопросам о параллельной работе предыдущих и новой версии Visual Studio см. разделы сведений о совместимости для Visual Studio 2019 и Visual Studio 2017.
Добавлено через 2 минуты
Короче, щас буду пробовать обновлять свою семерку, если поможет или не поможет- то отпишусь
При попытке запустить сообщество Visual Studio 2017 после успешной установки появляется предупреждение «Неизвестная ошибка» (показано ниже).
ОБНОВЛЕНИЕ: после принудительного удаления и переустановки
удалить эту папку (или похожую):
- имя папки 15.0_db2a872f может отличаться на вашем компьютере, например. 15.0_XXXXXXX
- обнаружил в журнале запуска vs, что обработка Progression_NativePackage_Component_x86.pkgdef выручила, указывая на несогласованную установку расширения
Я only должен был переименовать (если вы не хотите делать резервную копию)/удалить следующий файл:
После перезапуска Visual Studio 2017 вам может потребоваться снова активировать Tools or Extensions .
Проверьте, установлен ли на компьютере агент Symantec Workspace Virtualization Agent. Удаление продукта из программы добавления\удаления исправило неизвестную ошибку при запуске VS 2017.
Вот деталь продукта . Код продукта: Код пакета: Дата установки: 2015.05.21 Версия: 6.4.1266 Издатель: Symantec
Я запустил его от имени администратора, и это как-то загрузилось очень хорошо после этого. Я получал ту же ошибку даже после того, как убедился, что все пакеты и SDK были установлены, пока я не запустил его от имени администратора.
По сути, просто перейдите к ярлыку в меню «Пуск» или к файлу .exe в файлах, затем щелкните его правой кнопкой мыши и запустите от имени администратора или измените его в свойствах. Тбх, это похоже на временное исправление, и я на самом деле хотел бы узнать реальный источник проблемы, но сейчас мне не нужно переустанавливать и ремонтировать снова и снова.
Та же версия: Visual Studio Community 2017, установленный с помощью программы запуска
У меня такая же проблема после обновления VS 2017 Enterprise до сборки 26228.9.
Исправление возможно, удалив эту папку:
где xxxxxxxx - это шестнадцатеричное число.
НО ПОСЛЕ ТОГО, ЧТО ВЫ ПОТЕРЯЕТЕ ВСЕ НАСТРОЙКИ, которые вы сделали при установке VS 2017 (кроме устройства с лицензионным ключом продукта).
Извините, что должен сказать это, но:
Может быть, будет лучше застрял на VS2015 на данный момент. Потому что MS до сих пор не имеет действительно полностью функциональной сборки VS.
VS 2017 все еще готов для первых экспериментов, а не для реальной работы.
Это такая же история, как была, когда был опубликован VS2015. (через несколько дней перестанут работать).
У меня есть установка бок о бок с VS2015. После однократного открытия и закрытия VS2015 VS2017 снова запускается нормально. Странно но помогло в моем случае.
Я столкнулся с этой проблемой в Visual Studio Professional , Когда не работал от имени администратора. (Он работал Ok как администратор) Я использовал решение Никлара об удалении папок.
Мне нужно было только удалить или переименовать ApplicationPrivateSettings.lock в папке C:\users \AppData\Local\Microsoft\VisualStudio\15.0_c31ecfb9.
Я исправил это так же, как niclar, удалив папку 15 _. *. Однако кажется, что переименование privateregistry.bin имеет тот же эффект с меньшими трудностями.
Как упомянуто Torbjorn, ReSharper и другие расширения могут испортить, однако переустановка не требуется.
Просто зайдите в Инструменты> Расширения и обновления . > Прокрутите список установленных расширений > Включить те, которые должны быть включены.
Читайте также: