/// <summary> /// 触发 OnException 事件 /// </summary> /// <param name="sender">触发当前事件对象</param> /// <param name="e">程序执行时,发生的错误信息对象</param> protected virtual void ExceptionTrigger(Exception e, object sender = null) { if (OnException != null) { OnException(sender ?? this, UdpEventArg.CreateException(e)); } }
/// <summary> /// 触发 OnClosed 事件 /// </summary> /// <param name="sender">触发当前事件对象</param> protected virtual void CloseTrigger(object sender = null) { if (OnClosed != null) { OnClosed(sender ?? this, UdpEventArg.CreateClose()); } }
/// <summary> /// 触发 OnReceived 事件 /// </summary> /// <param name="sender">触发当前事件对象</param> /// <param name="data">接收到的数据正文信息</param> protected virtual void ReceiveTrigger(byte[] data, object sender = null) { if (OnReceived != null) { OnReceived(sender ?? this, UdpEventArg.CreateReceive(data)); } }
private void _Client_OnException(object sender, UdpEventArg e) { if (null != OnException) { OnException(sender ?? this, e); } }
/// <summary> /// 触发 OnOpened 事件 /// </summary> /// <param name="sender">触发当前事件对象</param> protected virtual void OpenTrigger(object sender = null) { if (OnOpened != null) { OnOpened(sender ?? this, UdpEventArg.CreateOpen()); } }
private void _Client_OnClosed(object sender, UdpEventArg e) { if (null != OnClosed) { OnClosed(sender ?? this, e); } }
void VCDatagramAnalyzer_OnClosed(object sender, UdpEventArg e) { //此处标识网络数据服务关闭 //ChangeStateMessage(OperatorCode.Closed); ChangeBtnStatue(true); m_DataReceiverWnd.DatagramAnalyzerCtrl_OnClosed(sender, e); }
//此处开始解析数据 private void _Client_OnReceived(object sender, UdpEventArg e) { if (null != OnReceived) { OnReceived(sender ?? this, e); } //缓存接收到的网络数据报; //并解析所有收到的数据报 _CacheBuffer.AddRange(e.Data); byte[] buffer = Analyze(_CacheBuffer.ToArray()); //解析数据完成; //移除解析完成的数据报 int cachelen = _CacheBuffer.Count; int len = buffer.Length; _CacheBuffer.InsertRange(0, buffer); _CacheBuffer.RemoveRange(len, cachelen); }
public void DatagramAnalyzer_OnReceived(object sender, UdpEventArg e) { //此处标识接收到数据 ChangeStateMessage(OperatorCode.Received); }
public void DatagramAnalyzerCtrl_OnOpened(object sender, UdpEventArg e) { //此处标识网络数据服务打开 ChangeStateMessage(OperatorCode.Opened); }
void VCDatagramAnalyzer_OnReceived(object sender, UdpEventArg e) { //此处标识接收到数据 //ChangeStateMessage(OperatorCode.Received); m_DataReceiverWnd.DatagramAnalyzer_OnReceived(sender, e); }
void VCDatagramAnalyzer_OnException(object sender, UdpEventArg e) { //此处代码执行发生异常 //日志文件记录当前错误 //ChangeStateMessage(OperatorCode.Error); }