private void Button_Click(object sender, RoutedEventArgs e) { TextSearchR.Text = ""; ManagedClient user = new ManagedClient(); int port = Convert.ToInt32(Tport.Text); int LN = Convert.ToInt32(TLN.Text); string Msg = TCN.Text; for (int i = 0; i < l1.Items.Count; i++) Msg +="||"+l1.Items[i]; for (int i = 0; i < KeyWord.Items.Count; i++) Msg += "||#" + KeyWord.Items[i]; Random rd = new Random(); int rand = rd.Next(); port += rand % 100; string tport = port.ToString(); user.start(port, 5, 0, LN, Msg,tport); string useit = user.getResult(); string big = DateTime.Now.ToString(); string[] vect = useit.Split('?'); string display = ""; //for (int i = 1; i < vect.Length; i++) //{ // string[] vect2 = vect[i].Split('&'); // display = display + vect2[0] + "\n---Duration: " + vect2[1] + "ms\n---Endtime: " + big + "." + vect2[2] + "\n\n"; //} List<string> listArr = new List<string>(); for (int i = 1; i < vect.Length; i++) { string[] vect2 = vect[i].Split('&'); display = display + vect2[0] + "\n---Duration: " + vect2[1] + "ms\n---Endtime: " + big + "." + vect2[2] + "\n\n"; listArr.Add(vect2[1]); } string[] time = listArr.ToArray(); int amount = 0; int largest = 0; int shortest = 0; for (int i = 0; i < time.Length; i++) { int each = Convert.ToInt32(time[i]); if (each > largest) largest = each; if (i == 0) shortest = largest; if (each < shortest) shortest = each; amount += each; } int average = amount / time.Length; string Saverage = average.ToString(); STT4.Text = shortest.ToString()+"ms"; LGT_Copy2.Text = largest.ToString()+"ms"; Saverage += "ms"; UAV2.Text = Saverage; TextSearchR.Text = display; }
public void Init() { this.broadcast = new UDPSocket(); this.broadcast.ReceivedPacket += Broadcast_ReceivedPacket; this.managedClient = new ManagedClient(); this.managedClient.BufferSize = 2000; this.managedClient.ReceivedPacket += ManagedClient_ReceivedPacket; this.managedClient.Connected += ManagedClient_Connected; this.managedClient.Disconnected += ManagedClient_Disconnected; this.handlePacket = new HandlePacket(this.managedClient.Logger); }
private void Button_Click_4(object sender, RoutedEventArgs e) { SResult.Text = ""; ManagedClient user = new ManagedClient(); int port = Convert.ToInt32(Uport.Text); int LN = Convert.ToInt32(ULN.Text); string Msg = ""; for (int i = 0; i < FileBox2.Items.Count; i++) { if (i == 0) Msg += FileBox2.Items[i]; else Msg += "||" + FileBox2.Items[i]; } Random rd = new Random(); int rand = rd.Next(); port += rand % 100; string uport = port.ToString(); user.start(port, 4, 0, LN, Msg, uport); string useit = user.getResult(); string big = DateTime.Now.ToString(); string[] vect = useit.Split('?'); List<string> listArr = new List<string>(); string display = ""; for (int i = 1; i < vect.Length; i++) { string[] vect2 = vect[i].Split('&'); display = display + vect2[0] + "\n---Duration: " + vect2[1] + "ms\n---Endtime: " + big + "." + vect2[2] + "\n\n"; listArr.Add(vect2[1]); } string[] time = listArr.ToArray(); int amount = 0; int largest = 0; int shortest = 0; for (int i = 0; i < time.Length;i++ ) { int each = Convert.ToInt32(time[i]); if (each > largest) largest = each; if (i == 0) shortest = largest; if (each < shortest) shortest = each; amount += each; } int average = amount / time.Length; string Saverage = average.ToString(); Saverage+="ms"; UAV.Text = Saverage; STT1.Text = shortest.ToString()+"ms"; LGT.Text = largest.ToString()+"ms"; ShowResult1.Text = display; }
static void Main(string[] args) { ManagedClient user = new ManagedClient(); user.start(8082, 1, 0, 2, "test test test", "8082"); }
static void Main(string[] args) { _clients = new Dictionary <int, ManagedClient>(); _random = new Random(); _outWriter = new BinaryWriter(Console.OpenStandardOutput()); _writerLock = new object(); bool quit = false; Console.CancelKeyPress += (sender, a) => { quit = true; }; NetcodeLibrary.SetLogLevel(NetcodeLogLevel.None); using (var reader = new BinaryReader(Console.OpenStandardInput())) { while (!quit) { try { var size = reader.ReadInt32(); var bytes = reader.ReadBytes(size); var json = Encoding.UTF8.GetString(bytes); var messageArray = JsonConvert.DeserializeObject <JArray>(json); var messageType = messageArray[0].Value <int>(); var messageId = messageArray[1].Value <int>(); try { switch (messageType) { case TypeCheckPresence: { WriteMessage(new JArray { JValue.FromObject(ResultSuccess), JValue.FromObject(messageId), JValue.FromObject(HelperVersion), }); break; } case TypeCreateClient: { var id = _random.Next(); while (_clients.ContainsKey(id)) { id = _random.Next(); } var isIpV6 = false; if (messageArray.Count >= 3) { isIpV6 = messageArray[2].Value <bool>(); } _clients[id] = new ManagedClient { client = new Client(isIpV6 ? "::" : "0.0.0.0", 0), tickRate = 60, shouldRun = true, time = 0, pendingPackets = new ConcurrentQueue <byte[]>(), }; _clients[id].thread = new Thread(ClientRun); _clients[id].thread.IsBackground = true; _clients[id].thread.Start(id); WriteMessage(new JArray { JValue.FromObject(ResultClientCreated), JValue.FromObject(messageId), JValue.FromObject(id), }); break; } case TypeSetClientTickRate: { var id = messageArray[2].Value <int>(); var tickRate = messageArray[3].Value <int>(); _clients[id].tickRate = tickRate; WriteMessage(new JArray { JValue.FromObject(ResultSuccess), JValue.FromObject(messageId), }); break; } case TypeConnectClient: { var id = messageArray[2].Value <int>(); var connectTokenBase64 = messageArray[3].Value <string>(); _clients[id].client.Connect(Convert.FromBase64String(connectTokenBase64)); WriteMessage(new JArray { JValue.FromObject(ResultSuccess), JValue.FromObject(messageId), }); break; } case TypeSendPacket: { var id = messageArray[2].Value <int>(); var packetData = messageArray[3].Value <string>(); _clients[id].pendingPackets.Enqueue(Convert.FromBase64String(packetData)); WriteMessage(new JArray { JValue.FromObject(ResultSuccess), JValue.FromObject(messageId), }); break; } case TypeGetClientState: { var id = messageArray[2].Value <int>(); string state; switch (_clients[id].client.State) { case ClientState.Connected: state = "connected"; break; case ClientState.ConnectionDenied: state = "connectionDenied"; break; case ClientState.ConnectionRequestTimeout: state = "connectionRequestTimeout"; break; case ClientState.ConnectionResponseTimeout: state = "connectionResponseTimeout"; break; case ClientState.ConnectionTimedOut: state = "connectionTimedOut"; break; case ClientState.ConnectTokenExpired: state = "connectTokenExpired"; break; case ClientState.Disconnected: state = "disconnected"; break; case ClientState.InvalidConnectToken: state = "invalidConnectToken"; break; case ClientState.SendingConnectionRequest: state = "sendingConnectionRequest"; break; case ClientState.SendingConnectionResponse: state = "sendingConnectionResponse"; break; default: state = "unknown"; break; } WriteMessage(new JArray { JValue.FromObject(ResultSuccess), JValue.FromObject(messageId), JValue.FromObject(state), }); break; } case TypeDestroyClient: { var id = messageArray[2].Value <int>(); _clients[id].shouldRun = false; WriteMessage(new JArray { JValue.FromObject(ResultSuccess), JValue.FromObject(messageId), }); break; } } } catch (Exception ex) { WriteMessage(new JArray { JValue.FromObject(ResultErrorInternal), JValue.FromObject(messageId), JValue.FromObject(ex.ToString()), }); } } catch (EndOfStreamException) { // Requested to close by browser process. return; } } } }