摘要: from:http://www.yaosansi.com/post/1443.html 在C++中加载和卸载DLL是一件很容易的事,LoadLibrary和FreeLibrary让你能够轻易的在程序中加载DLL,然后在任何地方卸载。在C#中我们也能使用Assembly.LoadFile实现动态加载DLL,但是当你试图卸载时,你会很惊讶的发现Assembly没有提供任何卸载的方法。这是由于托管代码的自动垃圾回收机制会做这件事情,所以C#不提供释放资源的函数,一切由垃圾回收来做。这引发了一个问题,用Assembly加载的DLL可能只在程序结束的时候才会被释放,这也意味着在程序运行期间无法更新被加载 阅读全文
posted @ 2012-09-19 10:54 Yaoquan.Luo 阅读(408) 评论(0) 推荐(0) 编辑
摘要: from:http://www.cnblogs.com/elzero/archive/2007/07/17/821288.html 利用反射进行动态加载和调用.Assembly ass=Assembly.LoadFrom(DllPath); //利用dll的路径加载,同时将此程序集所依赖的程序集加载进来,需后辍名.dllAssembly.LoadFile 只加载指定文件,并不会自动加载依赖程序集.Assmbly.Load无需后辍名加载dll后,需要使用dll中某类.Type type=ass.GetType(“TypeName”);//利用类型的命名空间和名称获得类型需要实例化类型,才可以使用 阅读全文
posted @ 2012-09-19 10:52 Yaoquan.Luo 阅读(465) 评论(0) 推荐(0) 编辑