NullReferenceException при попытке установить расширение Visual Studio в VS 2015

Поэтому я пытаюсь установить расширение Visual Studio в Visual Studio 2015, но получаю эту ошибку при попытке:

System.NullReferenceException: ссылка на объект не установлена ​​на экземпляр объекта

Странно то, что я могу запустить расширение в экспериментальном экземпляре при отладке.

Это в журнале установки:

Beginning to install extension to Microsoft Visual Studio Professional 2015...
Install Error : System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.CheckForValidDotNetFramework(IExtension extension)
   at Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.CheckForInstallBlockers(InstallableExtensionImpl extension, IInstalledExtensionList modifiedInstalledExtensionsList, Boolean isNestedExtension, Boolean& olderVersionInstalled)
   at Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.InstallInternal(InstallableExtensionImpl extension, Boolean perMachine, Boolean isNestedExtension, IDictionary`2 extensionsInstalledSoFar, List`1 extensionsUninstalledSoFar, IInstalledExtensionList modifiedInstalledExtensionsList, AsyncOperation asyncOp, UInt64 totalBytesToWrite, UInt64& totalBytesWritten, Boolean enforceCertificateCheckForUpgrade)
   at Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.BeginInstall(IInstallableExtension installableExtension, Boolean perMachine, AsyncOperation asyncOp, Boolean enforceCertificateCheckForUpgrade)
   at Microsoft.VisualStudio.ExtensionManager.ExtensionManagerService.InstallWorker(IInstallableExtension extension, Boolean perMachine, AsyncOperation asyncOp, Boolean enforceCertificateCheckForUpgrade)

Вещи, которые я уже пробовал:

  • Ремонт Visual Studio
  • Попытка на другом ПК (та же ошибка)
  • Пытаюсь установить его в безопасном режиме (devenv /safemode)
  • devenv /resetsettings
  • Попытка установки с помощью двойного клика на файле vsix вместо частной галереи расширений
  • Удаление расширения "Инструменты разработчика аналитики"
  • Попытка более старой версии кода, который, я уверен, когда-то работал
  • Проверка всех ссылок, очистка, восстановление
  • Удаление пакетов nuget и их чтение (Newtonsoft.Json и еще 1)

Пожалуйста помоги.

1 ответ

Решение

Хорошо, теперь я проверил ExtensionManager.Implementation и из метода CheckForValidDotNetFramework выяснил, что диапазон версий.NET Framework не был установлен для расширения. Я мог бы установить это в source.extension.vsixmanifest под Dependencies где я вошел [4.6.1] в Version range записи после изменения.NET Framework на все проекты.

Было бы полезно, если бы сообщение об ошибке в журнале сообщало, какой объект был нулевым.

Другие вопросы по тегам