今天在使用DotNetTextBox文本编辑器控件出现如下问题:
未能加载文件或程序集“EnvDTE, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。系统找不到指定的文件。
在开发环境下一点问题都没有,但在发布环境下就出现了如下的问题,很是郁闷。然后在互联网上查了下。解释如下
Visual Studio 自动化和扩展性
将 EnvDTE 和 VSLangProj 程序集一起使用时出错
如果创建的项目引用了一个或多个 VSLangProj 程序集和 EnvDTE 程序集,在运行时则可能收到以下错误:
“未处理的异常:System.IO.FileNotFoundException:加载 EnvDTE 文件时出错,版本=7.0.3300.0”
运行时类型解析冲突导致该错误。也就是说,包含 Visual Studio 2005 的 EnvDTE 版本为 8.0.xx,但是项目的配置引用却需要该程序集的早期版本(7.0.xx 版)。若要解决此问题,必须将较新版本的 EnvDTE 的绑定重定向添加到项目的 (.config) 配置文件中。这将启用 Visual Studio 来加载较新版本的 EnvDTE,并防止错误发生。
若要实现这一点,请将“应用程序配置文件”添加到项目中,然后将其内容替换为以下内容:
复制代码
这种错误只在生成 EXE 时出现,因为 DLL 中不具有配置文件。
请参见
任务
如何:添加对 EnvDTE 和 EnvDTE80 命名空间的引用
其他资源
引用自动化程序集和 DTE2 对象
解决办法
添加一个版本为8.0.0.0的emvdte.dll文件到发布的网站的Bin文件夹下,并在web.config文件中添加如下配置
就可以解决问题了。
参考网站:http://www.rhl.name/article/EnvDTE.aspx
未能加载文件或程序集 EnvDTE, Version=8.0.0.0
最新推荐文章于 2025-01-14 11:19:59 发布
本文介绍了在使用DotNetTextBox文本编辑器控件时遇到的EnvDTE版本冲突问题及解决方案。通过添加版本为8.0.0.0的EnvDTE到项目的bin目录并在配置文件中进行设置,可以避免因版本不一致引发的运行时错误。
6483

被折叠的 条评论
为什么被折叠?



