如何释放 Assembly 调用的dll文件
Form loadfm()
{
String pjname="pjh.dll";
Assembly assm = Assembly.LoadFrom(pjname);
Type TypeToLoad= assm.GetType("htcn.piaoju.money");
object obj;
obj = Activator.CreateInstance(TypeToLoad);
Form fm = null; fm = (Form)obj;
return fm;
}如果释放Assembly?
Form loadfm()
{
String pjname="pjh.dll";
Assembly assm = Assembly.LoadFrom(pjname);
Type TypeToLoad= assm.GetType("htcn.piaoju.money");
object obj;
obj = Activator.CreateInstance(TypeToLoad);
Form fm = null; fm = (Form)obj;
return fm;
}如果释放Assembly?
解决方案 »
- 多线程下调用类的使用问题
- 打包的时候,文件夹里面也会包含引用到的dll文件,怎么处理好?
- windows8今年2月就出beta版了...我才安装上windows7..
- 这个方法要用到的一些参数应该怎样声明?请高手指教!!感激!
- 大家一起来,看谁的算法最好!(简单、高分)
- 如何让datagridview绑定的数据字段不显示出来?
- 各位大峡帮帮忙啊!
- select在C#中的返回值(急急急)
- 散分:哪里有winform的数据库项目源码下载?
- 在 MDI 应用程序中,为什么子窗体指定的最小尺寸没有作用?
- 协力电脑异动管理员已经停用了对远端/网路异动的支援
- 如何获取DataGridView指定单元格的内容
//创建AppDomain
AppDomain dom = AppDomain.CreateDomain("execDom");
//加载Assembly
dom.ExecuteAssembly(path);
//使用后释放AppDomain
AppDomain.Unload(dom);
ads.ShadowCopyFiles = "true";
AppDomain.CurrentDomain.SetShadowCopyFiles();
Evidence adevidence = AppDomain.CurrentDomain.Evidence;
AppDomain newDomain = AppDomain.CreateDomain("newDomain", adevidence, ads);
newDomain.SetShadowCopyFiles();
byte[] rawAssembly = loadFile(pjname);
Assembly assm = newDomain.Load(rawAssembly, null);
object obj = assm.CreateInstance("htcn.piaoju.money");
Form fm = null;
fm = (Form)obj;
return fm;
{
FileStream fs = new FileStream(filename, FileMode.Open);
byte[] buffer = new byte[(int)fs.Length];
fs.Read(buffer, 0, buffer.Length);
fs.Close();
fs = null;
return buffer; }