-1
Вот код сервера, который я разместил под событием нажатия кнопки. Как я могу сделать эту программу закрытой после отправки данных с одним клиентом и перезапустить или обновить снова и подключиться к следующему клиенту.Ответ нескольким клиентам, использующим сервер
string val;
Process[] pname = Process.GetProcessesByName("chrome");
if (pname.Length == 0)
{
MessageBox.Show("Application is not running");
val = "Not Running";
}
else
{
MessageBox.Show("Application is running");
val = " Running";
}
TcpListener tcpListener = new TcpListener(10);
tcpListener.Start();
Socket socketForClient = tcpListener.AcceptSocket();
if (socketForClient.Connected)
{
label1.Show();
label1.Text="Client connected";
//MessageBox.Show("Client connected");
NetworkStream networkStream = new NetworkStream(socketForClient);
System.IO.StreamWriter streamWriter =
new System.IO.StreamWriter(networkStream);
System.IO.StreamReader streamReader =
new System.IO.StreamReader(networkStream);
string data_var;
data_var = textBox1.Text;
string theString =val;
streamWriter.WriteLine(theString);
try
{
streamWriter.Flush();
theString = streamReader.ReadLine();
label1.Text = theString;
//MessageBox.Show(theString);
streamReader.Close();
networkStream.Close();
streamWriter.Close();
}
catch
{
label1.Text = "Not flushed";
}
}
try
{
socketForClient.Close();
//MessageBox.Show("Exiting...");
label1.Text = "EXIT";
Application.Restart();
}
catch
{ }
Я хочу сервер для обслуживания клиентов по одному. – user1737072
Почему вы перезапускаете приложение? – NiladriBose
в противном случае сервер будет медленным и даст много ошибок. Я не знаю, что является лучшим способом для этого, я связал это в цикле for, но у меня много ошибок. Это основная причина, по которой я запускаю приложение. – user1737072