Пример #1
0
        //Точка входа в программу. Код внутри метода Main будет выполнен этой программой
        static void Main(string[] args)
        {
            //объект core(ядро) будет управлять работой сервера, принимать сообщения, управлять пользователями и тд
            var core = new ServerCore();

            //ядро работает параллельно с основной программой, для начала работы надо вызвать метод StartWork()
            core.StartWork();
            //Немного логирования чтобы понять, что сервер запустился
            Console.WriteLine("STARTED!");
            //Если в консоли сервера мы нежмем Enter то выполнится метод ReadLine()
            Console.ReadLine();
            //И мы остановим работу сервера
            core.Stop();
        }
Пример #2
0
 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);
     }
 }
Пример #3
0
 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();
     }
 }
Пример #4
0
        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();
        }
Пример #5
0
        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());
            }
        }
Пример #6
0
 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);
     }
 }
Пример #7
0
 public ClientCore(TcpClient tcpClient, ServerCore serverCore)
 {
     Id     = Guid.NewGuid().ToString();
     client = tcpClient;
     server = serverCore;
 }