Dzień dobry. Chciałbym zamienić pętle while(true) na instrukcje if, mam na myśli to, że jeżeli instrukcja wykryje przychodzący pakiet to wykonuje kod
public class ListenStart
{
public Form2 form2;
public Random random = new Random();
public TextBox receivo;
public void SrvStart()
{
int port = random.Next(80, 10000);
string host = Dns.GetHostName();
string ip = Dns.GetHostEntry(host).AddressList[0].ToString();
IPAddress serverIP = IPAddress.Parse(ip);
TcpListener server = new TcpListener(serverIP,port);
TcpClient client = default(TcpClient);
try
{
server.Start();
Console.WriteLine("Listener is running. No error found!");
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
Console.Read();
}
while(true)
{
client = server.AcceptTcpClient();
byte[] receivedBuffer = new byte[100];
NetworkStream stream = client.GetStream();
stream.Read(receivedBuffer, 0, receivedBuffer.Length);
string msg = Encoding.ASCII.GetString(receivedBuffer, 0, receivedBuffer.Length);
this.form2.received.AppendText(msg + Environment.NewLine);
}
}
}