大佬教程收集整理的这篇文章主要介绍了使用同一DLL的多个版本,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
您可以将另一个版本加载到特定的AppDomain中
可能太详细了,但是这里是一篇文章,演示了在有用的环境中使用AppDomains及其工作方式:
http://msdn.microsoft.com/zh- CN/magazine/cc164072.aspx
从最基本的意义上讲,它取决于以下示例代码:
@H_607_11@ AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(CurrentDomain_AssemblyResolvE); ... static System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args) { if (/*some condition*/) return Assembly.LoadFrom("DifferentDllFolder\\differentVersion.dll"); else return Assembly.LoadFrom(""); }
我的任务是为应用程序创建新模块,因此,我正在向项目中添加新的DLL。一切都很好。
但是,在我的DLL中,我想使用外部DLL的新版本(无法控制)。如果我仅引用新的DLL并仅使用该DLL,则我的代码可以工作,但是旧代码将停止运行。
@H_607_11@Could not load file or assembly 'itextsharp,Version=5.0.6.0,Culture=neutral,PublicKeyToken=8354ae6d2174ddca' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
我尝试了一个简单的技巧来更改DLL的名称,但这显然对我来说太天真了,以至于认为它不会起作用。我尝试使用外部别名(通过在引用中定义它们),但我仍然不知道如何将两个具有相同名称的文件放入一个BIN文件夹中&Hellip;
我该怎么办?
以上是大佬教程为你收集整理的使用同一DLL的多个版本全部内容,希望文章能够帮你解决使用同一DLL的多个版本所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。