Exemplo n.º 1
0
 public void initConnt()
 {
     try
     {
         if (TxtIP != null && TxtPort != null)
         {
             bool      online    = false; //是否在线
             Ping      ping      = new Ping();
             PingReply pingReply = ping.Send(TxtIP);
             if (pingReply.Status != IPStatus.Success)
             {
                 return;
             }
             this.tcpPassiveEngine = NetworkEngineFactory.CreateTextTcpPassiveEngine(TxtIP, int.Parse(TxtPort), new DefaultTextContractHelper("\0"));
             this.tcpPassiveEngine.MessageReceived          += new CbDelegate <System.Net.IPEndPoint, byte[]>(tcpPassiveEngine_MessageReceived);
             this.tcpPassiveEngine.AutoReconnect             = true;//启动掉线自动重连
             this.tcpPassiveEngine.ConnectionInterrupted    += new CbDelegate(tcpPassiveEngine_ConnectionInterrupted);
             this.tcpPassiveEngine.ConnectionRebuildSucceed += new CbDelegate(tcpPassiveEngine_ConnectionRebuildSucceed);
             this.tcpPassiveEngine.Initialize();
         }
     }
     catch (Exception ee)
     {
     }
 }
Exemplo n.º 2
0
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.tcpServerEngine == null)
                {
                    this.tcpServerEngine = NetworkEngineFactory.CreateStreamTcpServerEngine(int.Parse(this.textBox_port.Text), new  StreamContractHelper());
                }

                if (this.hasTcpServerEngineInitialized)
                {
                    this.tcpServerEngine.ChangeListenerState(true);
                }
                else
                {
                    this.InitializeTcpServerEngine();
                }

                this.ShowListenStatus();
            }
            catch (Exception ee)
            {
                MessageBox.Show(ee.Message);
                LogHelper.Log("启动:" + ee.Message);
            }
        }
Exemplo n.º 3
0
 public void TcpConnection(int port)
 {
     try
     {
         if (this.tcpServerEngine == null)
         {
             this.tcpServerEngine = NetworkEngineFactory.CreateTextTcpServerEngine(port, (ITextContractHelper) new DefaultTextContractHelper(new string[1]
             {
                 "\0"
             }));
         }
         if (this.hasTcpServerEngineInitialized)
         {
             this.tcpServerEngine.ChangeListenerState(true);
         }
         else
         {
             this.InitializeTcpServerEngine();
         }
     }
     catch (Exception ex)
     {
         ex.ToString();
     }
 }
Exemplo n.º 4
0
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                if (this.tcpServerEngine == null)
                {
                    this.tcpServerEngine = NetworkEngineFactory.CreateTextTcpServerEngine(int.Parse(this.textBox_port.Text), new DefaultTextContractHelper("\0"));//DefaultTextContractHelper是StriveEngine内置的ITextContractHelper实现。使用UTF-8对EndToken进行编码。
                }

                if (this.hasTcpServerEngineInitialized)
                {
                    this.tcpServerEngine.ChangeListenerState(true);
                }
                else
                {
                    this.InitializeTcpServerEngine();
                }

                this.ShowListenStatus();
            }
            catch (Exception ee)
            {
                MessageBox.Show(ee.Message);
            }
        }
Exemplo n.º 5
0
 public ClsClient()
 {
     try
     {
         this.tcpPassiveEngine = NetworkEngineFactory.CreateTextTcpPassiveEngine("120.24.156.195", 13567, new DefaultTextContractHelper("\0"));
         this.tcpPassiveEngine.MessageReceived          += new CbDelegate <System.Net.IPEndPoint, byte[]>(tcpPassiveEngine_MessageReceived);
         this.tcpPassiveEngine.AutoReconnect             = true;//启动掉线自动重连
         this.tcpPassiveEngine.ConnectionInterrupted    += new CbDelegate(tcpPassiveEngine_ConnectionInterrupted);
         this.tcpPassiveEngine.ConnectionRebuildSucceed += new CbDelegate(tcpPassiveEngine_ConnectionRebuildSucceed);
         this.tcpPassiveEngine.Initialize();
     }
     catch (Exception ee)
     {
     }
 }
Exemplo n.º 6
0
        public void StartServer()
        {
            try
            {
                if (SockterServerEngine == null)
                {
                    var port  = ConfigTools.Get("port");
                    var _port = port == null || port.Length <= 0 ? 9909 : int.Parse(port);
                    SockterServerEngine = NetworkEngineFactory.CreateTextTcpServerEngine(_port, new DefaultTextContractHelper("\0"));//DefaultTextContractHelper是StriveEngine内置的ITextContractHelper实现。使用UTF-8对EndToken进行编码。
                }
                //判断 相关的监听事件是否注册
                if (IsSocketServerInitialized)
                {
                    SockterServerEngine.ChangeListenerState(true);
                }
                else
                {
                    InitializeTcpServerEngine();
                }

                //this.ShowListenStatus();
            }
            catch (Exception ee)
            {
                Console.WriteLine(ee.Message);
                if (ee.Message.IndexOf("there's one StriveEngine server instance running") >= 0)
                {
                    var res = MessageBox.Show("已打开一个实例或者前面实例的进程为未完全退出,是否重启?\r\n是:重启\r\n否:关闭\r\n取消:不做任何处理", "警告", MessageBoxButtons.YesNoCancel);
                    if (DialogResult.Yes == res)
                    {
                        Application.ExitThread();
                        Application.Exit();
                        Application.Restart();
                        Process.GetCurrentProcess().Kill();
                    }
                    else if (DialogResult.No == res)
                    {
                        Application.ExitThread();
                        Application.Exit();
                        Process.GetCurrentProcess().Kill();
                    }
                }
            }
            services = this;
        }
Exemplo n.º 7
0
        public void SendPrintMsg(QuerymemberJsonResult hy, CAVTicketModel data)
        {
            try
            {
                this.tcpPassiveEngine = NetworkEngineFactory.CreateTextTcpPassiveEngine("127.0.0.1", int.Parse("9000"), new DefaultTextContractHelper("\0"));
                //this.tcpPassiveEngine.MessageReceived += new CbDelegate<System.Net.IPEndPoint, byte[]>(tcpPassiveEngine_MessageReceived);
                this.tcpPassiveEngine.AutoReconnect = false;//启动掉线自动重连

                this.tcpPassiveEngine.Initialize();

                if (tcpPassiveEngine.Connected)
                {
                    var member = new MemberEntities();
                    var scene  = member.UserScenes.FirstOrDefault(x => x.scene == data.scene);
                    //var str = JsonConvert.SerializeObject(data);
                    var json = new
                    {
                        hotelcode    = data.hotelcode,
                        title        = "快顺核销系统",
                        orderno      = data.jycode,
                        addtime      = DateTime.Now.ToString("yyyy-MM-dd"),
                        CategoryName = data.CategoryName,
                        money        = data.fmoney,
                        FormulaName  = data.FormulaName,
                        ticketsn     = data.ticketsn,
                        mobile       = data.mobile,
                        bosscard     = hy.CardNo,
                        realbosscard = hy.realbosscard,
                        scenename    = scene == null ? "" : scene.scenename,
                        scene        = scene.Id,
                        Type         = "1"
                    };
                    var    str  = JsonConvert.SerializeObject(json);
                    string msg  = str + "\0";                              // "\0" 表示一个消息的结尾
                    byte[] bMsg = System.Text.Encoding.UTF8.GetBytes(msg); //消息使用UTF-8编码
                    this.tcpPassiveEngine.SendMessageToServer(bMsg);
                    this.tcpPassiveEngine.CloseConnection();
                }
            }
            catch (Exception ee)
            {
                throw;
            }
        }
Exemplo n.º 8
0
        private void button3_Click(object sender, EventArgs e)
        {
            try
            {
                //初始化并启动客户端引擎(TCP、文本协议)
                this.tcpPassiveEngine = NetworkEngineFactory.CreateTextTcpPassiveEngine(this.textBox_IP.Text, int.Parse(this.textBox_port.Text), new DefaultTextContractHelper("\0"));
                this.tcpPassiveEngine.MessageReceived          += new CbDelegate <System.Net.IPEndPoint, byte[]>(tcpPassiveEngine_MessageReceived);
                this.tcpPassiveEngine.AutoReconnect             = true;//启动掉线自动重连
                this.tcpPassiveEngine.ConnectionInterrupted    += new CbDelegate(tcpPassiveEngine_ConnectionInterrupted);
                this.tcpPassiveEngine.ConnectionRebuildSucceed += new CbDelegate(tcpPassiveEngine_ConnectionRebuildSucceed);
                this.tcpPassiveEngine.Initialize();

                this.button2.Enabled = true;
                this.button3.Enabled = false;
                MessageBox.Show("连接成功!");
            }
            catch (Exception ee)
            {
                MessageBox.Show(ee.Message);
            }
        }
Exemplo n.º 9
0
        private void ServerControl_Checked(object sender, RoutedEventArgs e)
        {
            try
            {
                //CheckForIllegalCrossThreadCalls = false;
                //初始化并启动服务端引擎(TCP、文本协议)
                this.tcpServerEngine = NetworkEngineFactory.CreateTextTcpServerEngine(int.Parse(this.textBox_port.Text), new DefaultTextContractHelper("\0"));//DefaultTextContractHelper是StriveEngine内置的ITextContractHelper实现。使用UTF-8对EndToken进行编码。
                this.tcpServerEngine.ClientCountChanged += new CbDelegate <int>(tcpServerEngine_ClientCountChanged);
                this.tcpServerEngine.ClientConnected    += new CbDelegate <System.Net.IPEndPoint>(tcpServerEngine_ClientConnected);
                this.tcpServerEngine.ClientDisconnected += new CbDelegate <System.Net.IPEndPoint>(tcpServerEngine_ClientDisconnected);
                this.tcpServerEngine.MessageReceived    += new CbDelegate <IPEndPoint, byte[]>(tcpServerEngine_MessageReceived);
                this.tcpServerEngine.Initialize();

                MessageBox.Show("开始监听");
                this.textBox_port.IsReadOnly = false;
                this.ServerControl.IsEnabled = false;
            }
            catch (Exception ee)
            {
                MessageBox.Show(ee.Message);
            }
        }
Exemplo n.º 10
0
        /// <summary>
        /// 启动程序
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                //初始化并启动服务端引擎(TCP、文本协议)
                this.tcpServerEngine = NetworkEngineFactory.CreateTextTcpServerEngine(int.Parse(this.textBox_port.Text), new DefaultTextContractHelper("\0"));//DefaultTextContractHelper是StriveEngine内置的ITextContractHelper实现。使用UTF-8对EndToken进行编码。
                this.tcpServerEngine.ClientCountChanged += new CbDelegate <int>(tcpServerEngine_ClientCountChanged);
                this.tcpServerEngine.ClientConnected    += new CbDelegate <System.Net.IPEndPoint>(tcpServerEngine_ClientConnected);
                this.tcpServerEngine.ClientDisconnected += new CbDelegate <System.Net.IPEndPoint>(tcpServerEngine_ClientDisconnected);
                this.tcpServerEngine.MessageReceived    += new CbDelegate <IPEndPoint, byte[]>(tcpServerEngine_MessageReceived);
                this.tcpServerEngine.Initialize();

                this.button1.Enabled       = false;
                this.textBox_port.ReadOnly = true;
                this.button2.Enabled       = true;
                this.comboBox1.Enabled     = true;
                this.button3.Enabled       = true;
            }
            catch (Exception ee)
            {
                MessageBox.Show(ee.Message);
            }
        }