我正在尝试使用套接字在客户端和服务器之间建立连接。我有一个图形用户界面。这是我的代码:
这是服务器的代码,它从 gui 的文本框中获取端口号,当单击开始按钮时,会创建一个套接字。
Thread thrAccept;
Socket server_socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
Socket n;
private void button_start_listening_Click(object sender, EventArgs e)
{
richTextBox_server_activity_log.AppendText("Server started. Waiting for clients... \n");
button_start_listening.Enabled = false;
server_socket.Bind(new IPEndPoint(IPAddress.Any, Convert.ToInt32(textbox_port_no.Text)));
server_socket.Listen(100);
thrAccept = new Thread(new ThreadStart(Accept));
thrAccept.Start();
}
private void Accept()
{
n = server_socket.Accept();
}
对于客户端,我使用两个文本框输入用户的 ip 和端口号,然后单击连接按钮,为了建立连接,我使用了这段代码:
c.Connect(ipText.Text, Convert.ToInt32(portText.Text)); //c is a socket
我的问题是,建立连接后,我想在服务器的 GUI 中打印类似“客户端已连接”的内容。但是我怎样才能让服务器知道客户端已经连接?
谢谢