예제 #1
0
        // 현재 로그인한 클라이언트의 정보를 로비 서버에 전송해 주는 메소드
        public void sendMessage(LobbyClientInformation lobbyClientInfoFromForm2)
        {
            User tempUser = new User(lobbyClientInfoFromForm2.status, lobbyClientInfoFromForm2.user_id);

            // 폼으로부터 전달받은 정보를 클라이언트에 저장
            lobbyClientInfo = lobbyClientInfoFromForm2;

            // 데이터를 Json 형식으로 변환하여 소켓을 통해 로비 서버로 전송
            string output = JsonConvert.SerializeObject(tempUser);
            byte[] outStream = System.Text.Encoding.ASCII.GetBytes(output);

            lobbySocket.Send(outStream, SocketFlags.None);
        }
예제 #2
0
        public LobbyClient(Form2 form2, LobbyClientInformation userInfo)
        {
            // LobbyClient 멤버변수 할당
            lobbySocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            form = form2;
            lobbyClientInfo = new LobbyClientInformation();
            lobbyClientInfo = userInfo;

            //socket을 로비 서버에 연결, getMessage 스레드 시작
            lobbySocket.Connect("127.0.0.1", 8001);
            Thread ctThread = new Thread(getMessage);
            ctThread.Start();
        }