资源管理器包 - 包未能正确加载

34
我遇到了一个关于VS2015和cordova项目的问题。今天早些时候我的项目运行得很好。但是,我将项目移动到新文件夹后,VS2015就出现了问题。它能运行,但某种方式下webessentials被卸载了,gulpfile.js中的NPM包损坏了Visual Studio...有人遇到过这个问题吗?

enter image description here

  <entry>
<record>28</record>
<time>2015/09/22 22:18:17.610</time>
<type>Error</type>
<source>VisualStudio</source>
<description>Loading UI library</description>
<guid>{2EF1EC52-C8BF-4FE0-8ECE-BA9C0D5D1603}</guid>
<hr>800a006f</hr>
<errorinfo>Cannot find the requested resource: 'VSMenus.ctmenu'.</errorinfo>

<entry>
<record>48</record>
<time>2015/09/22 22:18:18.186</time>
<type>Error</type>
<source>VisualStudio</source>
<description>CreateInstance failed for package [ResourceManagerPackage]</description>
<guid>{7C6A3AE5-F469-4D51-B52D-50393DEC9432}</guid>
<hr>80070002</hr>
<errorinfo>Could not load file or assembly 'Microsoft.VisualStudio.Azure.ResourceManager.Contracts.1.0, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.</errorinfo>


同样的问题也出现在这里。在收到此消息后,Web Essentials 2015将被禁用。 - Alexander Schmidt
@sprinter252 这是一个让 VS2015 正常工作的方法。它会重置 VS2015,您需要重新安装扩展程序,但它可以正常工作。命令提示符 > VS2015 文件夹devenv.exe /resetuserdata。另一个选项对我无效 devenv.exe /updateconfiguration 然后 devenv.exe /clearcache - DeanB_Develop
@sprinter252,你的VS2015是怎么崩溃的?当我编辑我的package.json并且NPM开始下载包时,它也会发生在我身上。[屏幕截图] - DeanB_Develop
“崩溃”这个词可能有点过于严厉了。它只是显示与您的情况相同的对话框,然后禁用Web Essentials。这就是我所说的“崩溃”。抱歉。 - Alexander Schmidt
2
如果我没记错的话,我修复了我的VS2015版本,使用的是“添加或删除程序”>“Microsoft Visual Studio Community 2015”>右键单击>更改>修复。 - DeanB_Develop
显示剩余5条评论
11个回答

20

在AppData文件夹中重命名或删除VS配置文件夹解决了我的问题。如果您安装了很多扩展程序,而这个方法并不能解决问题,您可能更喜欢重命名文件夹以便可以通过重命名来还原。

[drive]:\Users\<your user>\AppData\Roaming\Microsoft\VisualStudio\14.0

你真的帮我避免了另一种“格式化再重装”的暴力操作。谢谢。 - T-moty
请注意,这将卸载您的所有扩展并重新启用所有默认扩展。在大多数情况下,此错误是由于禁用了默认的VS扩展之一而引起的。 - Will Eddins
大多数情况下可能是这样,但我认为扩展的卸载并没有完全清除,这可能会在卸载后仍然导致错误,但无论如何都要记住这一点。 - dynamiclynk

19

打开 REGEDIT 并查找注册表中的键 {7C6A3AE5-F469-4D51-B52D-50393DEC9432},如日志文件所示,该键应位于 [User]\Software\Microsoft\VisualStudio\14.0_Config\AutoLoadPackages 下。

您可以将其删除,在进行操作之前先导出备份以防万一出现问题。


1
我按照你的建议删除了所有对那个GUID的引用,错误消失了。谢谢! - Thomas Erik Olsen
1
我在AutoLoadPackages中没有找到,但在Packages中找到了 @spartaco。 - Lord of Scripts
这不是一个答案,而是LOG文件中说它无法加载一个名为Resource Manager.blah.blah.Contracts的文件,该文件位于Extensions\aoxa1hqu.h5n中,当您查看该文件夹时,您会看到几个DLL文件,但没有失败加载的.Contracts.dll文件,因为它根本不存在。 - Lord of Scripts
啊!终于找到了!使用引用的日志文件,我能够找到所有出错的注册表键并将它们删除,这样问题就解决了!谢谢Spartaco! - Formic
是的,我在注册表中找到了它(3次出现),将其删除,现在在启动Visual Studio时错误不再出现,但在创建新项目时会出现。 - Harry
我不想处理从注册表中删除密钥的问题,所以我只是将有问题的密钥重命名为BROKEN_{GUID},而Visual Studio似乎并没有介意。 - Coruscate5

5

在安装新版本的VS 2015 Azure Pack后,我遇到了这个问题。

从“程序和功能”中卸载所有安装日期为今天的Azure组件,然后再次运行安装程序即可解决问题。


5

我曾经在使用Visual Studio 2017时遇到类似的问题:

enter image description here

当我试图为一个项目添加引用时出现了问题。

通过卸载我电脑上安装的之前版本的Visual Studio(2012),问题得以解决。


3
这对我很有用:
  1. 关闭Visual Studio实例
  2. 重命名C:\ Users \ leibbr \ AppData \ Roaming \ Microsoft \ VisualStudio \ 14.0
  3. 打开Visual Studio(问题已解决,但TFS设置也被删除了)
  4. 关闭Visual Studio
  5. 删除新创建的14.0文件夹并将旧文件夹重命名为14.0
  6. 打开Visual Studio
  7. 神奇!

3

我曾经遇到过Azure SDK和JSON大纲视图不起作用的类似问题。我使用Azure资源组模板创建了一个VS解决方案,但将其创建的文件移动到了新文件夹中。这导致出现错误消息:“ResourceManagerPackage包没有正确加载。”只需将文件放回原位即可解决该问题。

Deploy-AzureResourceGroup.ps1

将其放入解决方案根目录解决了我的问题。
更多细节请参见:http://blog.thingsgeeky.co.uk/?p=9751 希望对你有所帮助。
更新:
关于JSON概述不起作用的问题,在使用Visual Studio 2017时,确保.json文件在已加载/打开的解决方案/项目中,并在创建文件时使用以下内容来“制作”空的.json模板:
1.在“解决方案资源管理器”中,右键单击“解决方案/项目/文件夹”>添加>新项目…>Azure资源管理器部署模板。
2.如果您有现有模板,请复制其中的内容。
JSON概述应该可以工作。
您需要安装各种与Azure相关的Visual Studio扩展程序。很抱歉,我不知道哪个扩展程序提供了JSON概述功能或DeploymentProject功能。

就是这样。如果您不更改 ARM 项目中 VS 预期的默认设置,它就不会抱怨。 - bytejunkie

1
  1. 从C:\Users\{{USER_NAME}}\AppData\Roaming\Microsoft\VisualStudio\14.0打开Visual Studio的ActivityLog.xml。
  2. 从activitylog中找到导致问题的包的GUID。
  3. 打开REGEDIT。
  4. 导航至HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\14.0_Config\Packages{{GUID_OF_THE_PACKAGE_CAUSING_THE_ISSUE}}。
  5. 右键单击并删除整个条目。
  6. 为了更加安全,删除前先导出该条目。

1

虽然这样理论上可以回答问题,但最好还是在这里包含答案的关键部分,并提供链接以供参考。 - Anton Menshov

0
  1. 以管理员身份打开您的 Visual Studio 版本的开发人员 PowerShell。
  2. 进入您的 Visual Studio 版本的 Public Assembly 文件夹。 例如:VS 2017 Professional,请运行以下命令:

    cd 'C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\PublicAssemblies'

  3. 运行以下命令:

    gacutil -i Microsoft.VisualStudio.Shell.Interop.11.0.dll

  4. 重新启动 Visual Studio。

  5. 如果还不起作用,请重新启动您的电脑。

0
当我遇到同样的问题时,我在注册表中搜索了有问题的软件包的GUID。结果显示哪个扩展是罪魁祸首(它是Productivity Power Tools 2015)。
我卸载了这个扩展并重新安装了它,问题得以解决。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接