以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于Event 代理调用错误  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=50795)

--  作者:guoweidong
--  发布时间:2014/5/13 19:43:00
--  关于Event 代理调用错误
定义类型为 Public Delegate Sub EventHandler(Of TEventArgs)(sender As Object, e As TEventArgs)


Dim tclient As New Ashu.Tmc.TmcClient("111", "222", "")
tclient.OnMessage += Function(s, e) 
Try
\' 默认不抛出异常则认为消息处理成功  
Console.WriteLine("{0}接收到数据:{1}", DateTime.Now, JsonConvert.SerializeObject(e.Message))
Catch exp As Exception
Console.WriteLine(exp.StackTrace)
\' 消息处理失败回滚,服务端需要重发  
e.Fail()
End Try

End Function
tclient.Connect("ws://127.0.0.1:8181")


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20140513194038.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2014-5-13 19:45:42编辑过]

--  作者:有点甜
--  发布时间:2014/5/13 20:02:00
--  

 不理解你的意思。

 

 你先定义一个过程,再绑定到具体事件

 

 http://www.foxtable.com/help/topics/2374.htm

 

[此贴子已经被作者于2014-5-13 20:02:18编辑过]

--  作者:guoweidong
--  发布时间:2014/5/13 20:32:00
--  
把刚才的那段处理了,但是没反应,郁闷
在全局里定义了

Public Sub 消息服务(ByVal sender As System.Object, ByVal e As Ashu.Tmc.MessageArgs)
   Functions.Execute("消息服务",e,sender)
End Sub

Dim tclient As New Ashu.Tmc.TmcClient("111", "222", "")
AddHandler tclient.OnMessage , AddressOf 消息服务

Output.Show("asdfasdfasdf")
MessageBox.Show("sdfasdfasdf")

如果有效的话,我服务端是有提示连接成功的

--  作者:有点甜
--  发布时间:2014/5/13 20:37:00
--  

 呃,有没有调用?

 

tclient.Connect("ws://127.0.0.1:8181")


--  作者:guoweidong
--  发布时间:2014/5/13 20:39:00
--  
看样子我是没改错了,少写了句。