public LobbyMainWin() { InitializeComponent(); server = new SocketWrapper(); server.OnAccept += new SocketWrapper.dlgAccept(server_OnAccept); server.OnClose += new SocketWrapper.dlgClose(server_OnClose); server.OnRead += new SocketWrapper.dlgRead(PacketProcessor); Logger l = new Logger(tLog); //listClients.ItemsSource = clients; MapDB.Load("Data\\MapList.bin"); DigimonDB.Load("Data\\DigimonList.bin"); Opt = Settings.Deserialize(); Console.WriteLine("This server is configured to route players to the game server at {0}:{1}", Opt.GameServer.Host, Opt.GameServer.Port); if (Opt.LobbyServer.AutoStart) { server.Listen(new ServerInfo(Opt.LobbyServer.Port, Opt.LobbyServer.IP)); sbInfo1.Content = "Starting Lobby Server..."; } }
public void Setup() { _endpoint = new IPEndPoint(IPAddress.Loopback, 45982); _client = new Socket(_endpoint.AddressFamily, SocketType.Stream, ProtocolType.IP); _wrapper = new SocketWrapper(_client); _wrapper.Bind(_endpoint); _wrapper.Listen(100); }
private void btnStart_Click(object sender, RoutedEventArgs e) { if (server.Running) { return; } server.Listen(new ServerInfo(Opt.LobbyServer.Port, Opt.LobbyServer.IP)); sbInfo1.Content = "Starting Lobby Server..."; }
internal void Start() { var socket = new SocketWrapper(new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)); socket.Bind(new IPEndPoint(IPAddress.Parse(Config.Current.IpAddress), Config.Current.ListenPort)); socket.Listen(Config.Current.MaxPendingConnections); var thread = new Thread(this.Communication_ListenIncoming); thread.Start(socket); }
private void btnStart_Click(object sender, RoutedEventArgs e) { if (server.Running) { return; } ServerInfo info = new ServerInfo(Opt.AuthServer.Port, Opt.AuthServer.IP); server.Listen(info); }
public AuthMainWin() { InitializeComponent(); server = new SocketWrapper(); server.OnAccept += new SocketWrapper.dlgAccept(m_auth_OnAccept); server.OnRead += new SocketWrapper.dlgRead(m_auth_OnRead); server.OnClose += new SocketWrapper.dlgClose(server_OnClose); Logger _writer = new Logger(tLog); Opt = Settings.Deserialize(); if (Opt.AuthServer.AutoStart) { ServerInfo info = new ServerInfo(Opt.AuthServer.Port, Opt.AuthServer.IP); server.Listen(info); } }
private void Observe(object o) { try { //Starts listening server.Listen(new ServerInfo(Opt.GameServer.Port, Opt.GameServer.IP)); //Starts monitoring the client list ThreadPool.QueueUserWorkItem(new WaitCallback(Monitor)); while (true) { } } catch (ThreadAbortException) { server.Stop(); } catch (Exception e) { Console.WriteLine(e); } }
private void Button_Click_1(object sender, RoutedEventArgs e) { if (serversRunning != 0) { return; } Interlocked.Increment(ref serversRunning); // Server start serverTaskMain = new Task(() => { // Server setup SocketWrapper[] listenSocketArr = new SocketWrapper[1]; uint q = SocketsWrapper.Socket(AddressFamily.QCC_AF_INET, SocketType.QCC_SOCK_STREAM, listenSocketArr); SocketWrapper listenSocket = listenSocketArr[0]; q = listenSocket.Bind("0.0.0.0", Port); q = listenSocket.Listen(10); for (int s = 0; s < Servers; s++) { if (s != 0) { Interlocked.Increment(ref serversRunning); } _serverTasks[s] = new Task(() => { string[] remoteAddr = new string[1]; int[] remotePort = new int[1]; SocketWrapper[] newSocketArr = new SocketWrapper[1]; while (listenSocket.Accept(remoteAddr, remotePort, newSocketArr) == 0) { int bytesLeft = PatternLength; int byteCount = 0; using (SocketWrapper newSocket = newSocketArr[0]) { int[] sentArr = new int[1]; while (bytesLeft != 0) { byte[] tempBytes = new byte[Math.Min(bytesLeft, MaxSendBuffer)]; for (int i = 0; i < tempBytes.Length; i++) { tempBytes[i] = (byte)((i + byteCount) % 256); } q = newSocket.Send(tempBytes, tempBytes.Length, sentArr); if (q != 0) { break; } byteCount += sentArr[0]; bytesLeft -= sentArr[0]; } } } Interlocked.Decrement(ref serversRunning); }); _serverTasks[s].Start(); } }); serverTaskMain.Start(); }