如何获取动态加载DLL 类里面的事件?
2013-06-27 18:45
369 查看
现在已经能够动态的加载一个dll文件,并可执行他的一个函数,但是如果这个DLL类里面包含一个事件,当触发时,我该如何获取他反馈 的信息呢?谢谢,
Public Class ModbusRtu
'这个是生成的DLL文件类
Public Function StartWork(ByVal gt As String)
Dim i As Integer = 0
For i = 0 To 100
System.Threading.Thread.Sleep(1000)
Call StartEvent(Now())
Next
End Function
Public Event MyEvent(ByVal s As String) '自定义事件
Public Sub StartEvent(ByVal value As String) '触发事件函数
RaiseEvent MyEvent(value) '触发事件
End Sub
End Class
'==========================以下是加载ModBusRtu.dll这个文件
Dim asm As System.Reflection.Assembly
Dim classtemp As Type
asm = System.Reflection.Assembly.LoadFrom("ModBusRtu.dll")
classtemp = asm.GetType("ModBusRtu.ModbusRtu")
Dim obj As Object = asm.CreateInstance(classtemp.FullName)
就是加载这个dll之后,他每秒钟输出一个时间,我要能捕获,并显示他那输出的时间,VB.NET还处于刚入门,请高手赐教。。。
补充:我似乎找到了怎么用了,不过我是在vs2005 下编程,且用于WINCE6.0上。
classtemp.GetType().AddEventHandler(obj, AddressOf obj_Timer)
...
Sub obj_Timer()
' Here to deal with the timer event of your object's instance.
End Sub
不过为什么classtemp.GetType后没有“AddEventHandler”这个方法啊?是不是wince下的精简.net不支持?该怎么办?
Public Class ModbusRtu
'这个是生成的DLL文件类
Public Function StartWork(ByVal gt As String)
Dim i As Integer = 0
For i = 0 To 100
System.Threading.Thread.Sleep(1000)
Call StartEvent(Now())
Next
End Function
Public Event MyEvent(ByVal s As String) '自定义事件
Public Sub StartEvent(ByVal value As String) '触发事件函数
RaiseEvent MyEvent(value) '触发事件
End Sub
End Class
'==========================以下是加载ModBusRtu.dll这个文件
Dim asm As System.Reflection.Assembly
Dim classtemp As Type
asm = System.Reflection.Assembly.LoadFrom("ModBusRtu.dll")
classtemp = asm.GetType("ModBusRtu.ModbusRtu")
Dim obj As Object = asm.CreateInstance(classtemp.FullName)
就是加载这个dll之后,他每秒钟输出一个时间,我要能捕获,并显示他那输出的时间,VB.NET还处于刚入门,请高手赐教。。。
补充:我似乎找到了怎么用了,不过我是在vs2005 下编程,且用于WINCE6.0上。
classtemp.GetType().AddEventHandler(obj, AddressOf obj_Timer)
...
Sub obj_Timer()
' Here to deal with the timer event of your object's instance.
End Sub
不过为什么classtemp.GetType后没有“AddEventHandler”这个方法啊?是不是wince下的精简.net不支持?该怎么办?
相关文章推荐
- Notes开发如何动态加载dll文件
- highcharts click事件获取数据传给datagrid ,动态加载数据
- c# 如何进行动态加载dll
- Android 动态加载 之 如何获取插件res资源
- C++如何调用DLL呢,有两种,一种是静态,另外一种是动态,即通过调用windowsAPI 来加载和卸载DLL,具体思路:
- 如何在Windows Mobile下使用Native C++动态加载DLL
- 如何动态获取数据库里面的SQL
- asp.net mvc 如何获取ViewBag里面的动态属性
- 如何动态的获取数据库里面的字段以…
- jsp页面动态加载form标签的action地址和里面的submit按钮事件
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)1----C#中动态加载和卸载DLL
- 如何动态加载dll
- DataGrid动态生成模板列,模板列里面有一个TextBox,如何获取用户在TextBox里面输入的值啊?
- 如何在Java运行的时候动态加载一个jar包到classpath里面
- 当ajax加载更多的时候,动态生成的html里面的事件无法触发
- 只有dll的情况下如何动态调用里面的类成员函数
- C#.Net 如何动态加载与卸载程序集(.dll或者.exe)3---- 动态加载Assembly应用程序
- 如何在托管程序中动态加载dll并且调用其中的函数
- 如何动态加载DLL文件
- 关于JS中如何获取动态加载的对象小结