加载用完后我要删除 "aa.dll"

解决方案 »

  1.   

    不可以直接删除,因为是被整个进程所使用的Dll,一定要到整个进程退出之后才能删除.
    如果非要删除建议在重新运行程序时删除.
      

  2.   

    当一个Assembly被加载到AppDomain之后,静态数据被加载,在其中创建的对象GC会负责回收但是除非这个AppDomain被卸载,否则这个Assembly不会被单独卸载如果你需要动态运行环境,你可以创建一个AppDomain,然后在其中加载Assembly并运行,用完之后卸载该AppDomain
      

  3.   

    同意timmy3310(Tim) 的说法,但在实现上还有一些需要注意的地方。
    比如,不能直接用AppDomain.LoadAssembly加载assembly.仔细(一字一句)读这两篇文章。:)
    http://msdn.microsoft.com/library/en-us/dncscol/html/csharp03122002.asp?frame=true
    http://msdn.microsoft.com/library/en-us/dncscol/html/csharp05162002.asp?frame=true