コード例 #1
0
        private void ReceiveCallback(IAsyncResult ar)
        {
            Socket socket = (Socket)ar.AsyncState;

            try
            {
                int received = socket.EndReceive(ar);
                if (received <= 0)
                {
                    CloseClient(index);
                }
                else
                {
                    byte[] databuffer = new byte[received];
                    Array.Copy(_buffer, databuffer, received);

                    // TODO: HandleNetworkInformation
                    ServerDataHandle.HandleNetworkInformation(index, databuffer);

                    socket.BeginReceive(_buffer, 0, _buffer.Length, SocketFlags.None, new AsyncCallback(ReceiveCallback), socket);
                }
            } catch {
                CloseClient(index);
            }
        }
コード例 #2
0
 static void Main(string[] args)
 {
     Console.Title = "Server";
     ServerDataHandle.InitializeNetworkPackages();
     ServerTCP.SetupServer();
     Console.ReadLine();
 }