Assembly MyAssembly = Assembly.LoadFrom("WDLL.dll"); //传入类库的文件名 Type t = MyAssembly.GetType("Example.Class1"); //传入"名空间.类名"
object obj = Activator.CreateInstance(t,new object[2]{1,"mm"}); //生成Example.Class1类的实例
// MethodInfo m = t.GetMethod("Add"); //获得"Add"方法
// MethodInfo data = t.GetMethod("data"); //获得"data"方法
// PropertyInfo pstr=t.GetProperty("pstr"); //获得属性 EventInfo OnGetData= t.GetEvent("OnGetData");
if (OnGetData != null)
{
OnGetData.AddEventHandler(obj, ???????);
}
请问 动态调用是用 AddEventHandler这个方法吗? 前面是动态DLL中的类对象。后面是一个委托方法体。 但是这个委托如何写啊。如果写本程序中的方法报错。如果是写DLL中的方法,那这个事件对我来说又有什么用哟。 还是有其它什么方法我的目的是当DLL中的事件发生后。能运行调用者中的一个方法啊!!
object obj = Activator.CreateInstance(t,new object[2]{1,"mm"}); //生成Example.Class1类的实例
// MethodInfo m = t.GetMethod("Add"); //获得"Add"方法
// MethodInfo data = t.GetMethod("data"); //获得"data"方法
// PropertyInfo pstr=t.GetProperty("pstr"); //获得属性 EventInfo OnGetData= t.GetEvent("OnGetData");
if (OnGetData != null)
{
OnGetData.AddEventHandler(obj, ???????);
}
请问 动态调用是用 AddEventHandler这个方法吗? 前面是动态DLL中的类对象。后面是一个委托方法体。 但是这个委托如何写啊。如果写本程序中的方法报错。如果是写DLL中的方法,那这个事件对我来说又有什么用哟。 还是有其它什么方法我的目的是当DLL中的事件发生后。能运行调用者中的一个方法啊!!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货