(연관된 글이 1개 있습니다.)
                    
                    
                    c# tcp/ip 통신 코드 짜다가 에러가 발생하여 질문드립니다. 
1. 서버와 연결확인이 되었고 메시지 전송까지 하였습니다. 그런데 메시지를 한번더 보낼려고 할때 클라이언트 코드에서 에러가 발생하며, 계속 연결이 끊겨 버립니다. 소스코드는 아래와 같습니다. 
1-1 클라이언트 소스코드 (c#)
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        // 서버 연결 확인 
        bool Connected = false;
        Socket Client_Socket;
        string Cmd = string.Empty;
        private void conbox_Click(object sender, EventArgs e)
        {
            if (Connected == true) return;
            // 서버 ip 및 포트 번호 
            string SIP = Server_ip.Text;
            int SPort = int.Parse(Server_port.Text);
            // TCP통신, 서버 연결 성공하면 connected -> true로 변환 
            Client_Socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            // 서버 연결 
            try
            {
              
                Client_Socket.Connect(new IPEndPoint(IPAddress.Parse(SIP), SPort));
                Connected = true;
            }
            catch
            {
                Connected = false;
                Client_Socket.Close();
            }
            if (Connected == true) concheck_text.Text = "연결 성공";
            else concheck_text.Text = "연결 실패";    
        }
        
        private void send_button_Click(object sender, EventArgs e)
        {
            //try
            //{
                while (Connected)
                {
                    //while (true)
                    //{
                        byte[] Buffer = Encoding.UTF8.GetBytes(send_textBox.Text);
                        Client_Socket.Send(Buffer); //******* 해당 부분에서 에러 발생 (System.Net.Sockets.SocketException: '현재 연결은 원격 호스트에 의해 강제로 끊겼습니다') ******
                    //}
                    
                }
            //}
            //catch (Exception ex)
            //{                
            //    //concheck_text.Text = "연결 끊김";
            //    //Connected = false;
            //    //Client_Socket.Close();
            //}
        }
1-2 서버 소스 코드 (파이썬)
 
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as server_socket:
    server_socket.bind(ADDR) 
    server_socket.listen()  
    # 무한루프 진입
    while True:
        client_socket, client_addr = server_socket.accept() 
        msg = client_socket.recv(SIZE)  
        print("[{}] message : {}".format(client_addr,msg)) 
        #client_socket.sendall("welcome!".encode())
        client_socket.close() 
        
        [연관 글]
                    
                    
                    
                    
                    
    
                    
                    
                    
                    
                    
                
                    [최초 등록일: ]
                    [최종 수정일: 12/10/2021]