我有两个项目,我想实现这样的功能,一个项目A里面都是DLL,另一个项目B则是实时监控这个项目的DLL类库里面类的变化。有新增的类或者减少的类。A项目生成的DLL一刷新。B项目就可以刷新DLL列表并获得A项目里面类的信息。我使用 Assembly.LoadFrom来加载A生成DLL。但是一旦加载后。A项目就无法在生成新的DLL。因为这个DLL正被B项目占用,这个问题怎么解决。
解决方案 »
- 怎样实现像QQ那样 有新闻就自动弹出框啊?
- 连接数据库时候怎样使用相对路径?
- 急急急!!! 100分求ComboBox数据帮定后数据源的更新问题
- IEnumerator
- 调用方法AddTree('M', (TreeNode)null)r提示”无法从string到char"
- 请大虾帮助:DataView筛选后的内容进行求和
- 高手请进,写了一个类(还没太明白类是什么东西),大家看看给点意见,顶者有分
- 这个错误怎么解决 "索引和长度必须引用该字符串内的位置"
- 各位大哥帮忙了:datagrid分页时出现的问题!
- VS2017 按空格键没智能提示?????请教设置方法!
- 关于:剔除重复元素,错在哪呢?
- 多线程prictureBox加载图片问题
另外由于DLL加载后只能通过卸载AppDomain来卸载,所以新开个AppDomain来处理比较好。
AppDomain newDomainName = AppDomain.CreateDomain("newDomainName");try{ Assembly testLibrary = newDomainName.Load(LibraryName); }finally{ AppDomain.Unload(newDomainName);}代码来自
http://www.codeproject.com/Articles/18556/To-Unload-a-Running-Dll