Я получаю "Инициализатор типа для" Microsoft.Cct.CctProjectNode "сделал исключение". при открытии файлов ccproj после установки Azure SDK 2.9 - программирование
Подтвердить что ты не робот

Я получаю "Инициализатор типа для" Microsoft.Cct.CctProjectNode "сделал исключение". при открытии файлов ccproj после установки Azure SDK 2.9

У меня есть решение с облачным проектом Azure, который нацелен на версию версии Microsoft Azure SD версии 2.7, которую я мог бы открывать/строить и развертывать без проблем. Поскольку Visual Studio заставляла меня обновлять, я пошел и установил новую версию Azure SDK версии 2.9. После этого обновления я не могу открыть файлы облачных проектов, а версия Visual Studio (версия сообщества 2015 года, теперь полностью обновленная до последнего момента, когда я пишу это), дает мне это сообщение об ошибке:

MyTest.ccproj: ошибка: инициализатор типа для "Microsoft.Cct.CctProjectNode" сделал исключение.

Я могу открыть проект, если вручную отредактировать файл ccproj и изменить

<ProductVersion>2.7</ProductVersion>

значение равно 2.9. Однако я не могу это использовать, поскольку другие люди работают над этим проектом, и они все еще хотят остаться в версии Azure SD версии 2.7, которая также в настоящее время развернута для производства.

Есть ли способ разрешить Visual Studio открывать старые версии облачных проектов? Нужно ли мне удалять обновления Azure SDK?

Спасибо всем!

4b9b3361

Ответ 1

Существует проблема с совместимостью SxS для версий 2.9.5 и предыдущих версий. Это очень недавно было обнаружено, и мы изучаем исправление для следующей версии, но до этого вам придется удалить 2.9.

  • Удалить "Средства Microsoft Azure для Microsoft Visual Studio 2015 - v2.9 "от программ добавления/удаления
  • Запустите msiexec /x {60473BF2-359B-43B3-AF6C-12BAC6C5BC3F}. (Для VS 2013 используйте {438EED24-F35B-44E0-A2E2-675838273002}) Это должно вызвать msi диалогового окна для удаления "Microsoft Azure Tools для Microsoft Visual Studio 2015 Core "
  • В программах добавления/удаления восстановить Microsoft Azure Tools для Microsoft Visual Studio 2015 - v2.7 (или v2.8 для пользователей, использующих эту версию).

Обновление ответа. Наиболее распространенными идентификаторами GUID для # 2 являются:

  • {60473BF2-359B-43B3-AF6C-12BAC6C5BC3F}
  • {438EED24-F35B-44E0-A2E2-675838273002}

Если вы получили сообщение об ошибке "Это действие действует только для продуктов, которые в настоящее время установлены". попробуйте использовать {8664E001-704C-4EFB-B68D-6A3DEF60BBEE}.


Форум поддержки MSFT на этом здесь

Подключить билет здесь

Ответ 2

Решение:

  • Удалите "средства Microsoft Azure для Microsoft Visual Studio 2015 - v2.9" из программ добавления/удаления и любых других компонентов v 2.9.
  • Запустите "msiexec/x {60473BF2-359B-43B3-AF6C-12BAC6C5BC3F}" или {8664E001-704C-4EFB-B68D-6A3DEF60BBEE}. (Для VS 2013 используйте {438EED24-F35B-44E0-A2E2-675838273002}). Это должно вызвать диалог msi для удаления "Microsoft Azure Tools для Microsoft Visual Studio 2015 Core".
  • При добавлении/удалении программ восстановите Microsoft Azure Tools для Microsoft Visual Studio 2015 - v2.7 (или v2.8 для пользователей, использующих эту версию).

Исключения:

В определенных ситуациях этого может быть недостаточно. Тем не менее, есть решения для этих исключений. Если вы все еще получите сообщение об ошибке, вы можете захотеть иметь чистую установку. Для этого используйте следующую команду: Get-WmiObject -Class win32_product | Out-File c:\temp \.txt

Это создаст файл в указанном вами месте со всеми пакетами, установленными на вашем компьютере. Поиск через этот файл и использование: msiexec/x < любой GUID, который вы считаете нужным

Здесь вы можете проверить, какие компоненты содержат пакет 2.8 (если это так), чтобы вы знали, что вам нужно или не должно: https://www.microsoft.com/en-us/download/details.aspx?id=50041

После удаления всего, вы должны переустановить 2.8.2 с помощью установщика веб-пакетов и проверить, работает ли это.

Дополнительные исключения:

В этот момент исходная проблема должна быть удалена, но вы можете столкнуться с одной из следующих ошибок, которые я вставил в конце статьи. Для первой ошибки вы должны зарегистрировать сборку. Вы можете перечислить сборки, используя:

gacutil -l > yourassemblies.txt

Просто откройте командную строку разработчика (доступно в меню "Пуск" > "Приложение" > "Visual Studio" ) и запустите команду.

DLL можно найти здесь: C:\Program Files\Microsoft SDK\Azure

Вы можете зарегистрировать его, используя ту же подсказку с помощью этой команды: gacutil/i yourdll.dll

Для второго исключения: Используйте procmon отсюда: https://technet.microsoft.com/en-us/sysinternals/bb896645

Найдите путь, который выполняет Visual Studio, путем захвата процесса VS (devenv) при воспроизведении ошибки.

Скопируйте файлы здесь: C:\Program Files\Microsoft SDK\Azure\Emulator на путь, который вы обнаружили.

См. также: Не удается запустить проект Windows Azure из-за ошибки: не удалось найти файлDFUI.exe, пожалуйста, проверьте правильность установки

Сборка:

Не удалось выполнить задачу "УдалитьCurrentDeployment".System.IO.FileNotFoundException: Не удалось загрузить файл или сборку "Microsoft.ServiceHosting.Tools, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35" или одну из его зависимостей. Система не может найти указанный файл. Имя файла: "Microsoft.ServiceHosting.Tools, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35" в Microsoft.Cct.Debugging.DevFabricService..ctor() в Microsoft.Cct. CctProjectNode. < > c.b__121_0() в System.Threading.LazyInitializer.EnsureInitializedCore [T] (T & target, Func 1 valueFactory) at System.Threading.LazyInitializer.EnsureInitialized[T](T& target, Func 1 valueFactory) в Microsoft.Cct.CctProjectNode.get_DevFabricService() в Microsoft.Cct.CctBuildDeploymentTaskHost. УдалитьCurrentDeployment() в Microsoft.CloudExtensions.MSBuildTasks.DeleteCurrentDeployment.Execute() в Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() в Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext() WRN: Ведение журнала привязки сборки отключено. Чтобы включить ведение журнала сбоев сбоя, установите значение реестра [HKLM\Software\Microsoft\Fusion! EnableLog] (DWORD) на 1. Примечание. Существует некоторое ограничение производительности, связанное с протоколированием сбоев привязки сборки. Чтобы отключить эту функцию, удалите значение реестра [HKLM\Software\Microsoft\Fusion! EnableLog].

Отсутствует файл:

Не удалось выполнить задачу "УдалитьCurrentDeployment". Microsoft.ServiceHosting.Tools.DevelopmentFabric.DevFabricException: Не удалось найти файл "DFUI.exe", пожалуйста, проверьте правильность установки. в Microsoft.ServiceHosting.Tools.Utility.ProcessWrapper.ResolveBinaryFullPath(String binaryName) в Microsoft.ServiceHosting.Tools.Utility.ProcessWrapper..ctor(String binaryName, String arguments, Boolean breakAway) в Microsoft.ServiceHosting.Tools.DevelopmentFabric.DevFabric..ctor(Boolean singleInstance) в Microsoft.Cct.Debugging.DevFabricService..ctor() в Microsoft.Cct.CctProjectNode. < > c.b__121_0() в System.Threading.LazyInitializer.EnsureInitializedCore [T] (T & target, Func 1 valueFactory) at System.Threading.LazyInitializer.EnsureInitialized[T](T& target, Func 1 valueFactory) в Microsoft.Cct.CctProjectNode.get_DevFabricService() в Microsoft.Cct.CctBuildDeploymentTaskHost.DeleteCurrentDeployment() в Microsoft.CloudExtensions.MSBuildTasks.DeleteCurrentDeployment.Execute() в Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft. Build.BackEnd.ITaskExecutionHost.Execute() в Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext()

Ответ 3

Сегодня был выпущен новый SDK 2.9.6 клик

Возможно, кто-то с этой проблемой может попытаться установить его и сказать, разрешены ли пролеты без необходимости других решений.

Ответ 4

Мне нужно было запустить msiexec/x {8664E001-704C-4EFB-B68D-6A3DEF60BBEE}, чтобы заставить это работать.

Я пробовал комментировать, не имея также 50 баллов, извините.

Ответ 5

Мне удалось загрузить проект, отредактировав файл проекта и изменив версию SDK на 2.9. По крайней мере, я мог отлаживать. Это временное решение во время ожидания, и поэтому вы не испортите свою машину при удалении/переустановке разных SDK. YMMV. Измените следующие разделы файла проекта и перезагрузите его:

Сначала измените на 2.9 из 2.8:

<ProductVersion>2.9</ProductVersion>

Тогда, в том же самом случае:

<CloudExtensionsDir Condition=" '$(CloudExtensionsDir)' == '' ">$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Windows Azure Tools\2.9\</CloudExtensionsDir>

Я надеюсь, что это поможет! Работал для меня:)

Ответ 6

установите 2.8 sdk вместе с уже установленным 2.7. Это решило мою проблему

Ответ 7

Я видел, что "user6258895" уже имеет это решение. Я просто хочу добавить еще:

У меня была та же проблема. После установки Microsoft Azure SDK для .Net(ваша версия Visual Studio) - Возьмите последнюю версию SDK, мое решение работает нормально.

Ниже перечислены инструменты, которые я установил для своей Visual Studio окончательной версии 2013 года. Если вы хотите, вы можете скачать ее в соответствии со своей версией на Visual Studio.

Сначала попробуйте установить/восстановить "Microsoft Azure SDK для .Net(ваша версия Visual Studio) - взять последнюю версию SDK". Смотрите, это работает или нет.

  • Microsoft.Azure.HDInsightToolsForVS2013.msi
  • MicrosoftAzureAuthoringTools-x64.msi
  • MicrosoftAzureComputeEmulator-x64.exe
  • MicrosoftAzureLibsForNet-x64
  • MicrosoftAzureQuickstarts.msi
  • MicrosoftAzureStorageEmulator.msi
  • MicrosoftAzureStorageTools.msi
  • MicrosoftAzureTools.VS110.exe - Для VS 2012
  • MicrosoftAzureTools.VS120.exe - Для VS 2013
  • MicrosoftAzureTools.VS140.exe - - Для VS 2015
  • VWDOrVs2013AzurePack.exe --- Попробуйте сначала установить его, чтобы увидеть, если он работает.
  • WebToolsExtensionsVS2013.msi

Или вы можете использовать Google для Microsoft Azure SDK для .NET - 2.6 (используйте требуемую версию)

N.B: измените версию в соответствии с конфигурацией вашего ПК /VS.

Спасибо.