题:
    主系统
    子系统1、子系统2、子系统3、子系统4
    公共类库1、公共类库2【公共系统仅供所有子系统调用】主系统通过反射调用子系统:
 要求:能加载子系统程序集,能卸载子系统程序集
谁帮忙解决100分相送,若嫌不够另外加分。

解决方案 »

  1.   

    建议楼主好好研究一下Assembly
      

  2.   

    用System.Reflection.Assembly.Load 动态加载程序集(.exe或dll)
    如:Assembly a = Assembly.LoadFrom("dy_loadAsse.exe");用AppDomain.Unload 方法 卸载指定的应用程序域中的所有程序集。
    参考:
    1..NET 动态加载程序集(一)
    2..NET 动态加栽程序集(二)
    3..NET 动态加载程序集(三)
      

  3.   

    Assembly a = Assembly.LoadFrom(DLL路径); 
      

  4.   

    实现插件结构
    Form1 fm=(Form)Assembly.Load("").CreateInstance(""); 
    fm.MdiParent=this.ParentForm; 
    fm.Show(); 
    fm.Dock=DockStyle.Fill; 
      

  5.   

    子系统DLL.AssemblyInfo.cs 中加入自定义属性 A。
    利用反射加载运行目录下所有DLL。判断这些DLL是否含有自定义属性 A,有则加载到程序集。
    在窗体加载的时候,对符合条件的DLL进行操作,比如用反射实例化,此类操作应用接口操作起来会比较简单。
      

  6.   

    http://www.csharpwin.com/csharpspace/8909r6291.shtml