我得到"'Microsoft.Cct.CctProjectNode'的类型初始化程序引发异常." 安装Azure SDK 2.9后打开ccproj文件时

bla*_*nik 46 c# azure visual-studio-2015

我有一个Azure云项目的解决方案,该项目针对的是Microsoft Azure SDK的2.7版本,我可以毫无问题地打开/构建和部署.由于Visual Studio唠叨我要更新,我继续安装了新的Azure SDK版本2.9.更新后,我无法打开云项目文件,Visual Studio(2015社区版,现在完全更新到我写这篇文章时的最新版本)给了我这个错误信息:

MyTest.ccproj:错误:'Microsoft.Cct.CctProjectNode'的类型初始化程序引发了异常.

如果我手动编辑ccproj文件并更改,我可以打开项目

<ProductVersion>2.7</ProductVersion>
Run Code Online (Sandbox Code Playgroud)

价值为2.9.但是,我不能使用它,因为其他人正在处理这个项目,他们仍然希望继续使用Azure SDK的2.7版本,该版本目前也部署到生产中.

有没有办法允许Visual Studio打开旧版本的云项目?我是否必须卸载Azure SDK更新?

谢谢你们!

kwi*_*ill 45

2.9.5及以前版本的SxS兼容性存在问题.这是最近发现的,我们正在寻找下一个版本的修复程序,但在此之前您必须卸载2.9.

  1. 从添加/删除程序中卸载 "Microsoft Azure工具for Microsoft Visual Studio 2015 - v2.9"
  2. msiexec /x {60473BF2-359B-43B3-AF6C-12BAC6C5BC3F}.(对于VS 2013,使用 {438EED24-F35B-44E0-A2E2-675838273002})这应该打开msi对话框以卸载"Microsoft Azure Tools for Microsoft Visual Studio 2015 Core"
  3. 在添加/删除程序中,修复用于Microsoft Visual Studio 2015的Microsoft Azure工具 - v2.7(对于使用该版本的人员,修复 v2.8).

更新答案.#2最常见的GUID是:

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

如果收到错误"此操作仅对当前安装的产品有效".尝试使用{8664E001-704C-4EFB-B68D-6A3DEF60BBEE}.


MSFT支持论坛就在这里

连接票在这里

  • 这是否真的是解决方案?完全卸载主要版本并避免使用,直到Microsoft找出解决方案?这似乎并不是高优先级,因为它至今仍在发生. (4认同)
  • 这个问题已修复了吗? (3认同)

小智 7

解:

  • 从添加/删除程序和任何其他v 2.9组件卸载"Microsoft Azure工具for Microsoft Visual Studio 2015 - v2.9"
  • 运行"msiexec/x {60473BF2-359B-43B3-AF6C-12BAC6C5BC3F}"或{8664E001-704C-4EFB-B68D-6A3DEF60BBEE}.(对于VS 2013,请使用{438EED24-F35B-44E0-A2E2-675838273002})这将打开msi对话框以卸载"Microsoft Azure Tools for Microsoft Visual Studio 2015 Core"
  • 在添加/删除程序中,修复用于Microsoft Visual Studio 2015的Microsoft Azure工具 - 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

删除所有内容后,您应该使用Web包安装程序重新安装2.8.2并检查是否有效.

更多例外:

此时原始问题应该已经消失,但您可能会遇到我在文章末尾粘贴的以下错误之一.对于第一个错误,您应该注册程序集.您可以使用以下命令列出装配:

gacutil -l> yourassemblies.txt

只需打开开发人员命令提示符(在"开始"菜单>"应用程序">"Visual Studio"中可用)并运行该命令.

可以在这里找到DLL:C:\ Program Files\Microsoft SDKs\Azure

您可以使用以下命令使用相同的提示注册它: gacutil/i yourdll.dll

对于第二个例外:使用procmon来自:https: //technet.microsoft.com/en-us/sysinternals/bb896645

通过在再现错误时捕获VS进程(devenv)来查找Visual Studio正在搜索的路径.

将文件从此处复制:C:\ Program Files\Microsoft SDKs\Azure\Emulator到您发现的路径.

另请参阅: 由于错误无法运行Windows Azure项目:无法找到fileDFUI.exe,请验证您的安装是否正确

部件:

"DeleteCurrentDeployment"任务意外失败.System.IO.FileNotFoundException:无法加载文件或程序集"Microsoft.ServiceHosting.Tools,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35"或其依赖项之一.系统找不到指定的文件.文件名:Microsoft.Cct上的Microsoft.Cct.Debugging.DevFabricService..ctor()中的文件名称为"Microsoft.ServiceHosting.Tools,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35". CctProjectNode.<> c.b__121_0()1 valueFactory) at System.Threading.LazyInitializer.EnsureInitialized[T](T& target, Func位于Microsoft的Microsoft.Cct.CctBuildDeploymentTaskHost.DeleteCurrentDeployment()的Microsoft.Cct.CctProjectNode.get_DevFabricService()的System.Threading.LazyInitializer.EnsureInitializedCore [T](T&target,Func 1 valueFactory) Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext()中的Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()中的.CloudExtensions.MSBuildTasks.DeleteCurrentDeployment.Execute():程序集绑定日志记录是关闭.要启用程序集绑定失败日志记录,请将注册表值[HKLM\Software\Microsoft\Fusion!EnableLog](DWORD)设置为1.注意:程序集绑定失败日志记录会导致一些性能损失.要关闭此功能,删除注册表值 [HKLM\SOFTWARE \微软\融合!EnableLog.

缺少文件:

"DeleteCurrentDeployment"任务意外失败.Microsoft.ServiceHosting.Tools.DevelopmentFabric.DevFabricException:无法找到文件"DFUI.exe",请验证您的安装是否正确.在Microsoft.ServiceHosting.Tools.DevelopmentFabric.DevFabric的Microsoft.ServiceHosting.Tools.Utility.ProcessWrapper.ResolveBinaryFullPath(String binaryName)at Microsoft.ServiceHosting.Tools.Utility.ProcessWrapper..ctor(String binaryName,String arguments,Boolean breakAway).位于Microsoft.Cct.CctProjectNode的Microsoft.Cct.Debugging.DevFabricService..ctor()的.ctor(Boolean singleInstance).在System.Threading.LazyInitializer.EnsureInitializedCore [T]中的<> c.b__121_0()(T&target,Func 1 valueFactory) at System.Threading.LazyInitializer.EnsureInitialized[T](T& target, Func1 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()


huh*_*uha 5

今天发布了一个新的SDK 2.9.6 点击

也许有这个问题的人可以尝试安装它,并告诉他们是否解决了问题,而无需其他解决方案.