/*------------------------------------------------------------------------- * データ受信 * データを分解してハンドラに渡す * ---------------------------------------------------------------------------*/ private void received_handler(object sender, ReceivedDataEventArgs e) { string[] datas = e.received_string.Split(':'); if (datas.Length <= 0) { return; // データエラー } // バージョン情報 if (datas[0] == VERSION_COMMAND) { if (datas.Length != 3) { // エラー m_state = client_state.error_version; return; } if ((datas[1] != m_version.ToString()) || (datas[2] != m_protocol_name)) { // エラー m_state = client_state.error_version; return; } // 通信可能 m_state = client_state.ready; return; } // ハンドラに渡す if (ReceivedCommand != null) { ReceivedCommand(this, datas); } }
/*------------------------------------------------------------------------- * データを受信した * ---------------------------------------------------------------------------*/ protected virtual void OnReceivedData(ReceivedDataEventArgs e) { if (ReceivedData != null) { ReceivedData(this, e); } }
/*------------------------------------------------------------------------- * 데이터受信 * ---------------------------------------------------------------------------*/ private void received_handler(object sender, ReceivedDataEventArgs e) { }
/*------------------------------------------------------------------------- * データを受信した * ---------------------------------------------------------------------------*/ private void client_received_data(object sender, ReceivedDataEventArgs e) { //イベントを発生 OnReceivedData(new ReceivedDataEventArgs((tcp_client_base)sender, e.received_string)); }