/// <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; }
private void button2_Click(object sender, EventArgs e) { WeaveServerPort sp = new WeaveServerPort(); if (checkBox1.Checked) { sp.IsToken = true; } sp.Port = Convert.ToInt32(txt_port.Text); if (radioButton2.Checked) { sp.PortType = WeavePortTypeEnum.Web; //sp.Certificate = new System.Security.Cryptography.X509Certificates.X509Certificate2(); 如果需要wss证书连接 listBox1.Items.Add("WEB端口" + sp.Port); } else if (radioButton3.Checked) { sp.PortType = WeavePortTypeEnum.Http; listBox1.Items.Add("HTTP端口" + sp.Port); } else if (radioButton4.Checked) { sp.PortType = WeavePortTypeEnum.Bytes; Assembly[] abs = AppDomain.CurrentDomain.GetAssemblies(); foreach (Assembly ab in abs) { Type[] types = ab.GetExportedTypes(); foreach (Type t in types) { try { if (t.FullName == textBox1.Text) { sp.BytesDataparsing = ab.CreateInstance(textBox1.Text) as IDataparsing; } } catch (Exception ex) { throw ex; } } } } else if (radioButton5.Checked) { sp.PortType = WeavePortTypeEnum.udpBytes; Assembly[] abs = AppDomain.CurrentDomain.GetAssemblies(); foreach (Assembly ab in abs) { Type[] types = ab.GetExportedTypes(); foreach (Type t in types) { try { if (t.FullName == textBox1.Text) { sp.BytesDataparsing = ab.CreateInstance(textBox1.Text) as IDataparsing; } } catch (Exception ex) { throw ex; } } } listBox1.Items.Add("udpBytes端口" + sp.Port); } else if (radioButton6.Checked) { sp.PortType = WeavePortTypeEnum.jsonudp; listBox1.Items.Add("jsonudp端口" + sp.Port); } else { sp.PortType = WeavePortTypeEnum.Json; listBox1.Items.Add("json端口" + sp.Port); } listsp.Add(sp); panel2.Visible = false; }