Visual Studio 插件故障排除、错误号及其可能的解决方案





5.00/5 (15投票s)
错误号 8013150a, 80131515, 80131522, 80070002, 80004002, 80004005, 80070057, 80131500, 80131018
目录
引言
在本文中,我尝试涵盖一些关于 Visual Studio 插件异常所遇到的错误号的可能解决方案。
这些错误可能发生在开发过程中或安装后。
我投入了时间和精力来撰写我所有的文章。请不要忘记投下您的投票、建议和反馈,以提高本文及后续文章的质量。
您可能会对我的关于Visual Studio 插件 - Web Search的文章感兴趣。请点击此处查看我的其他文章。
背景
在处理 Visual Studio 的 Web Search 插件时,我做了一些关于插件错误号的笔记,用于排查 Visual Studio 插件的问题。我想将这些笔记分享给开发者社区,以简化大家在使用 Visual Studio 插件时的工作。
如果您对文中提到的任何问题有其他解决方案,请告知我。
错误号
错误号可以揭示发生的异常。通过使用错误号,我们可以确定问题的根本原因。
80131515
当我尝试从网络位置运行 Web Search 插件时,我遇到了 80131515 这个错误,在应用了本文的第一个解决方案后,该问题得到了解决。
如何解决 80131515 问题
当我们在网络位置运行插件文件时,会出现此错误,因为从网络位置运行的 DLL 权限较低。
要解决此问题,我们需要将 loadFromRemoteSources
元素添加到 devenv.exe.config 文件中。
以管理员身份打开位于以下位置的 devenv.exe.config 文件
C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe.config
或
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe.config
并将 loadFromRemoteSources
元素及其值“true
”添加进去,如下所示
<configuration>
<runtime>
<loadFromRemoteSources enabled="true"/>
</runtime>
</configuration>
有时,下载的文件会被 windows
标签标记为“文件来自不同位置”,以对其施加更多限制。简单的解决方案是解除对下载的 zip 文件或 DLL 文件的阻止。
要**解除**文件的阻止,只需右键单击文件(zip/dll/setup),选择“**属性**”,然后选择“**常规**”选项卡,最后点击“**解除阻止**”按钮。请参考以下截图
如果您有其他解决此问题的方法,请告诉我。
80131522
当 .AddIn
文件中指定的 connect
类的 namespace
和/或 class
名称与源代码中声明的实际名称不匹配时,会出现此错误。
如果您查看下图,实际的 Namespace
是 WebSearch2012。
但在 .AddIn
文件中,Namespace
被指定为 WebSearch
,这就是导致 80131522 错误的原因。
如果您有其他解决此问题的方法,请告诉我。
80070002
80070002 错误通常由两个原因引起
assembly
标签中提到的 AddIn DLL 丢失(无效),或- AddIn 引用了一个找不到的 DLL。
如果您有其他解决此问题的方法,请告诉我。
8013150a
此错误是由于对 AddIn DLL 缺乏权限造成的。当我们从网络位置运行 AddIn 时会发生这种情况。
最好且最简单的解决方案是:将 AddIn 复制到本地文件夹,并将该文件夹添加到 Addins 的文件夹列表中。
- 转到 **工具**->**选项**。
- 选择 **环境**。
- 转到 **Add in** / **宏安全性** 选项卡。
- 点击 **添加**-> 选择您已复制 AddIn 文件和 AddIn DLL 的本地文件夹,然后点击“添加”。
如果您对此 8013150a 问题有其他解决方案,请告知我。
80004002
80004002 错误是由于程序集(Assembly)不是 COM 可见的。
当我使用上述代码编译 WebSearch
时,我才遇到了这个错误。如果未指定 System.Runtime.InteropServices.ComVisible
,则默认值为 True
。
确保 Connect
类是 Public
的,并且您在程序集级别或至少在类级别应用了 ComVisible(True)
。
80004005
80004005
是由于 <Assembly>
标签中指定的文件无效。
确保文件存在于 <Assembly>
标签中指定的路径。
如果您对此问题有其他解决方案,请告知我。
80070057
这个错误很可能是因为 Add-in 代码内部发生了异常。
哪个异常?在哪里?
插件类的 OnConnection
方法中的任何未处理错误都将导致该插件从 Visual Studio 中删除。
错误号 **80070057** 表示插件类(主要是 Connect
类)的 OnConnection
方法内部发生了 ArgumentException
。
解决方案
在 OnConnection
方法内部处理 ArgumentException
将解决此问题。
如果您使用的是任何第三方插件,那么您应该获取最新的插件组件(DLL),其中包含此 bug 的修复。
如果您有其他解决此问题的方法,请告诉我。
80131018
这是由于 <Assembly>
标签中指定了一个未知的文件。
80131500
这个错误很可能是因为 Add-in 代码内部发生了异常。
插件类的 OnConnection
方法中的任何未处理错误都将导致该插件从 Visual Studio 中删除。
错误号 **80131500** 表示插件类(主要是 Connect
类)的 OnConnection
方法内部发生了未处理的 Exception
。
解决方案
应对意外的错误 。
在 OnConnection
方法内部处理 Exception
将解决此问题。
如果您使用的是任何第三方插件,那么您应该获取最新的插件组件(DLL),其中包含此 bug 的修复。
如果您有其他解决此问题的方法,请告诉我。
参考文献
Web Search
您可能会对我的关于Visual Studio 插件 - Web Search的文章感兴趣。
摘要
在本文中,我尝试解释了一些常见的 Visual Studio 插件错误及其多种解决方案,希望您喜欢这篇文章,并从中获得了知识的增值。
我投入了时间和精力来撰写我所有的文章,请**不要忘记**投下您的投票、建议和反馈,以提高本文及后续文章的质量。
历史
- 2012 年 9 月 23 日:初始版本