//Точка входа в программу. Код внутри метода Main будет выполнен этой программой static void Main(string[] args) { //объект core(ядро) будет управлять работой сервера, принимать сообщения, управлять пользователями и тд var core = new ServerCore(); //ядро работает параллельно с основной программой, для начала работы надо вызвать метод StartWork() core.StartWork(); //Немного логирования чтобы понять, что сервер запустился Console.WriteLine("STARTED!"); //Если в консоли сервера мы нежмем Enter то выполнится метод ReadLine() Console.ReadLine(); //И мы остановим работу сервера core.Stop(); }
static void Main(string[] args) { try { server = new ServerCore(); listenThread = new Thread(new ThreadStart(server.Listen)); listenThread.Start(); } catch (Exception ex) { server.Disconnect(); Console.WriteLine(ex.Message); } }
private void StartServer_Click(object sender, EventArgs e) { if (_isStarted) { Server.Close(); _isStarted = false; EncType.Enabled = true; StartServer.Text = "Запустить сервер"; } else { _isStarted = true; Server = new ServerCore(Dispatcher.CurrentDispatcher, this, EncType.SelectedIndex == 0 ? EncriptionType.Rsa : EncriptionType.Xor); StartServer.Text = "Остановить сервер"; EncType.Enabled = false; Server.Start(); } }
public static void Main() { ServerCore core = new ServerCore(); core.BindEvent += core.AddBind; core.ListenEvent += core.Listening; core.AcceptEvent += core.Accepting; core.CloseEvent += core.CloseProcesses; core.RecEvent += core.Receiving; core.SendEvent += core.Sending; OpenLink linker; linker = core.OpenSocket; linker.Invoke(); }
static void Main(string[] args) { // Class variables ServerCore servCore = new ServerCore(); IPAddress ipaddress = IPAddress.Parse(servCore.GetIpAddress()); int port = 6000; Console.WriteLine("Server running at " + ipaddress.ToString() + ":" + port); // Initialize the listener TcpListener listener = new TcpListener(ipaddress, port); // Set loop variable Boolean loop = true; try { UDPListener serverListener = new UDPListener(60001); serverListener.StartUDPListener(); // Start listening on the specified port Console.WriteLine("Starting the TCP Listener..."); listener.Start(); Console.WriteLine("Server running at port " + port); Console.WriteLine("Local end point is " + listener.LocalEndpoint); Console.WriteLine("Listening for requests..."); while (loop) { Socket newClient = listener.AcceptSocket(); ServerThreadHandler clientThread = new ServerThreadHandler(newClient); clientThread.StartHandling(); } }catch(Exception error) { Console.WriteLine(error.ToString()); } }
private void StartServerButton_Click(object sender, RoutedEventArgs e) { try { bStartServer.IsEnabled = false; if (ServerCore.IsStarted) //If started { ServerCore.Stop(); StatusColor.Fill = Brushes.WhiteSmoke; bStartServer.Content = "Start server"; } else { var port = Convert.ToInt32(tb_port.Text); if (port < 0 || port > 65535) { throw new FormatException("Port is " + (port < 0 ? "negative" : "greater than 65535")); } bStartServer.Content = "Server starting..."; ServerCore.Start(port); StatusColor.Fill = Brushes.LawnGreen; bStartServer.Content = "Pause server"; } bStartServer.IsEnabled = true; } catch (FormatException ex) { MessageBox.Show("Port format error: " + ex.Message); Logger.LogError("User input error. Port format error: " + ex.Message); } catch (Exception ex) { StatusColor.Fill = Brushes.Red; Logger.LogError("Error: " + ex.Message); } }
public ClientCore(TcpClient tcpClient, ServerCore serverCore) { Id = Guid.NewGuid().ToString(); client = tcpClient; server = serverCore; }