通过反射获取DLL的类实现加载窗体
生活随笔
收集整理的這篇文章主要介紹了
通过反射获取DLL的类实现加载窗体
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.創建一個DLL 類庫,并新建一個窗體類,這個直接在vs上操作就好
?
2. 建立一個Testassembly工程
?
新建一個測試類
namespace Testassembly {public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs e){string ss = AppDomain.CurrentDomain.BaseDirectory + "Debug\\TestDll.dll";Assembly assembly = Assembly.LoadFile(ss);//獲取類型,參數(名稱空間+類) Type type = assembly.GetType("TestDll.Form1");//創建該對象的實例,object類型,參數(名稱空間+類) // System.Reflection.MethodInfo method = type.GetMethod("Show");//方法的名稱object instance = assembly.CreateInstance("TestDll.Form1");Form frm = (Form)instance;frm.Show();// method.Invoke(instance,Object[] parametors = new Object[] { "param" });}} }
效果就是彈出一個新的窗口
轉載于:https://www.cnblogs.com/meetweb/p/6055821.html
總結
以上是生活随笔為你收集整理的通过反射获取DLL的类实现加载窗体的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php fastcgi_finish_r
- 下一篇: 洛谷P1119 灾后重建[Floyd]