Example #1
0
        private void Form1_Load(object sender, EventArgs e)
        {
            WeaveP2Server wp2p = new WeaveP2Server();

            wp2p.waveReceiveEvent += Wp2p_waveReceiveEvent;
            wp2p.Start(8989);
        }
Example #2
0
        public bool Run(string loaclIP, int port, int port2)
        {
            // Mycommand comm = new Mycommand(, connectionString);
            ReLoad();


            if (Wptype == WeavePortTypeEnum.Bytes)
            {
                p2psev.weaveReceiveBitEvent += P2psev_weaveReceiveBitEvent;
            }
            else
            {
                p2psev.waveReceiveEvent += p2psev_receiveevent;
            }

            p2psev.weaveUpdateSocketListEvent += p2psev_EventUpdataConnSoc;
            p2psev.weaveDeleteSocketListEvent += p2psev_EventDeleteConnSoc;
            //   p2psev.NATthroughevent += tcp_NATthroughevent;//p2p事件,不需要使用
            p2psev.Start(Convert.ToInt32(port));
            p2psev2 = new WeaveP2Server(loaclIP);
            p2psev2.weaveDeleteSocketListEvent += P2psev2_EventDeleteConnSoc;
            p2psev2.weaveUpdateSocketListEvent += P2psev2_EventUpdataConnSoc;
            p2psev2.waveReceiveEvent           += P2psev2_receiveevent;
            //   p2psev.NATthroughevent += tcp_NATthroughevent;//p2p事件,不需要使用
            p2psev2.Start(Convert.ToInt32(port2));
            if (EventMylog != null)
            {
                EventMylog("连接", "连接启动成功");
            }
            return(true);
        }
Example #3
0
        private void StopListen_button_Click(object sender, RoutedEventArgs e)
        {
            wudp = null;


            StopListen_button.IsEnabled = false;

            StartListen_button.IsEnabled = true;
        }
Example #4
0
        protected override void OnClosed(EventArgs e)
        {
            wudp = null;


            //Application.Current.ShutdownMode = ShutdownMode.OnMainWindowClose;
            //if (this.IsAfreshLogin == true) return;
            Application.Current.Shutdown();
            Environment.Exit(0);// 可以立即中断程序执行并退出
            base.OnClosed(e);
        }
Example #5
0
        public void AddProt(List <WeaveServerPort> listServerPort)
        {
            foreach (WeaveServerPort sp in listServerPort)
            {
                IWeaveTcpBase p2psev = null;
                WeaveTcpToken tt     = new WeaveTcpToken();
                if (sp.PortType == WeavePortTypeEnum.Web)
                {
                    p2psev = new WeaveWebServer();
                    if (sp.Certificate != null)
                    {
                        ((WeaveWebServer)p2psev).Certificate = sp.Certificate;
                    }
                }
                else if (sp.PortType == WeavePortTypeEnum.Json)
                {
                    p2psev = new WeaveP2Server("127.0.0.1");
                }
                else if (sp.PortType == WeavePortTypeEnum.Bytes)
                {
                    p2psev = new WeaveP2Server(WeaveDataTypeEnum.Bytes);
                    if (sp.BytesDataparsing == null)
                    {
                        throw new Exception("BytesDataparsing对象不能是空,请完成对应接口的实现。");
                    }
                    tt.BytesDataparsing          = sp.BytesDataparsing;
                    p2psev.weaveReceiveBitEvent += P2psev_receiveeventbit;
                }
                //else if (sp.PortType == WeavePortTypeEnum.jsonudp)
                //{
                //    p2psev = new WeaveUDPServer(WeaveDataTypeEnum.Json);

                //}
                //else if (sp.PortType == WeavePortTypeEnum.Json)
                //{
                //    p2psev = new WeaveUDPServer("127.0.0.1");
                //}
                else if (sp.PortType == WeavePortTypeEnum.Http)
                {
                    p2psev = new HttpServer(sp.Port);
                }
                p2psev.waveReceiveEvent           += P2ServerReceiveHander;
                p2psev.weaveUpdateSocketListEvent += P2ServerUpdateSocketHander;
                p2psev.weaveDeleteSocketListEvent += P2ServerDeleteSocketHander;
                //   p2psev.NATthroughevent += tcp_NATthroughevent;//p2p事件,不需要使用
                p2psev.Start(Convert.ToInt32(sp.Port));//myI.Parameter[4]是端口号
                tt.PortType = sp.PortType;
                tt.P2Server = p2psev;
                tt.IsToken  = sp.IsToken;
                tt.WPTE     = sp.PortType;
                TcpTokenList.Add(tt);
                P2ServerList.Add(p2psev);
            }
        }
Example #6
0
        private void StartListen_button_Click(object sender, RoutedEventArgs e)
        {
            int port = int.Parse(Port_textBox.Text);

            wudp = new WeaveP2Server();
            wudp.waveReceiveEvent           += Wudp_waveReceiveEvent;
            wudp.weaveUpdateSocketListEvent += Wudp_weaveUpdateSocketListEvent;
            wudp.weaveDeleteSocketListEvent += Wudp_weaveDeleteSocketListEvent;


            wudp.Start(port);


            StartListen_button.IsEnabled = false;

            StopListen_button.IsEnabled = true;
        }
Example #7
0
        private void OpenFile(object sender, EventArgs e)
        {
            System.IO.StreamReader sr = new System.IO.StreamReader("port.txt");
            while (!sr.EndOfStream)
            {
                String  str       = sr.ReadLine();
                minForm childForm = new minForm();
                childForm.Name      = str;
                childForm.MdiParent = this;
                childForm.Text      = "端口:" + str.Split(':')[0] + "--类型:" + str.Split(':')[1];
                childForm.Show();
                IWeaveTcpBase wps = null;
                if (str.Split(':')[1] == "socket")
                {
                    wps = new WeaveP2Server();
                }
                if (str.Split(':')[1] == "websocket")
                {
                    wps = new WeaveWebServer();
                }
                if (str.Split(':')[1] == "http")
                {
                    wps = new HttpServer(Convert.ToInt32(str.Split(':')[0]));
                }

                wps.waveReceiveEvent           += Wps_waveReceiveEvent;
                wps.weaveDeleteSocketListEvent += Wps_weaveDeleteSocketListEvent;
                wps.weaveUpdateSocketListEvent += Wps_weaveUpdateSocketListEvent;
                wps.Start(Convert.ToInt32(str.Split(':')[0]));
                //  wps.GetNetworkItemCount();
                WMQMODE wm = new WMQMODE();
                wm.iwtb = wps;
                wm.mf   = childForm;
                listiwtcp.Add(wm);
                listminForm.Add(childForm);
                childForm.listBox1.Items.Add("监听已启动。。。。");
            }
            sr.Close();
            timer1.Start();
            openToolStripMenuItem.Enabled = false;
            LayoutMdi(MdiLayout.TileHorizontal);
        }
        /// <summary>
        /// 读取WeavePortTypeEnum类型后,初始化 new WeaveP2Server("127.0.0.1"),并添加端口;
        /// </summary>
        /// <param name="WeaveServerPort"></param>
        public void StartServer(WeaveServerPort _ServerPort)
        {
            // WeaveTcpToken weaveTcpToken = new WeaveTcpToken();

            P2Server = new WeaveP2Server("127.0.0.1");

            P2Server.waveReceiveEvent           += P2ServerReceiveHander;
            P2Server.weaveUpdateSocketListEvent += P2ServerUpdateSocketHander;
            P2Server.weaveDeleteSocketListEvent += P2ServerDeleteSocketHander;
            //   p2psev.NATthroughevent += tcp_NATthroughevent;//p2p事件,不需要使用
            P2Server.Start(_ServerPort.Port);      //myI.Parameter[4]是端口号

            TcpToken.PortType = _ServerPort.PortType;
            TcpToken.P2Server = P2Server;
            TcpToken.IsToken  = _ServerPort.IsToken;
            TcpToken.WPTE     = _ServerPort.PortType;

            // TcpToken = weaveTcpToken;

            // P2Server = p2psev;
        }
Example #9
0
 public DTUGateWay()
 {
     DTUSer = new WeaveP2Server(WeaveDataTypeEnum.custom);
 }