/// <summary> /// 处理其他消息 /// </summary> /// <param name="peer">消息来源主机</param> /// <param name="msg">消息</param> private static void OtherMessage(Peer peer, Msg msg) { switch (msg.type) { case 21: peer.close(); IPAddress add = msg.data as IPAddress; Socket s = NetUtils.TestConnect(new IPEndPoint(add, Configuration.Port)); if (s == null) HoldingServer.Singleton.TestServer(); else HoldingServer.Singleton.ClientStart(new Peer(s, Message)); break; } }
/// <summary> /// Tcp监听接受回调函数 /// </summary> /// <param name="sender">接受的主机</param> void lis_onAccept(Peer sender) { if (state == 2) { sender.send(new Msg(21, client.remote)); sender.close(); return; } sender.onMessage += MessageDealer.Message; sender.onFinalDeal += MessageDealer.FinalDeal; sender.onPeerQuit += MessageDealer.PeerQuit; }