Klient tcp

0

Witam

Mam wykonać aplikacje która co sekundę wysyła zapytanie do serwera a ten odpowiada.na razie mam tyle

public partial class Form1 : Form
    {
        Timer timer = new Timer();
        TcpClient tcpclnt = new TcpClient();
        byte[] BuforOut = new byte[] {......};

        public Form1()
        {
            InitializeComponent();
            timer.Tick += new EventHandler(timer_Tick);
            timer.Interval = 1000;

        }   
            

        private void button1_Click(object sender, EventArgs e)//start
        {
            timer.Enabled = true;
        }

        private void button2_Click(object sender, EventArgs e) //stop
        {
            timer.Enabled = false;
            tcpclnt.Close();
            this.Close();
        }
        void timer_Tick(object sender, EventArgs e)
        {
           try
            {
                
                tcpclnt.Connect("255.255.01.192", 8001);//jakiś adres jakis port
                Stream stm = tcpclnt.GetStream();
                stm.Write(BuforOut, 0, BuforOut.Length);
        
               
            }
            catch (Exception ee)
            {
                textBox2.Text = ee.StackTrace;
            }
        
            
        } 

Zastanawiam się cz za każdym razem muszę wykonywać" tcpclnt.Connect("255.255.01.192", 8001);" czy może wystarczy tylko raz.Jeśli tak to czy jest flaga która stwierdza że jest połączenie do serwera.
Ponadto co warto w takiej aplikacji(klient) jeszcze dodać??

0

Wystarczy, że się połączysz raz, np. w evencie button1_Click.

0
Utermiko napisał(a):

Wystarczy, że się połączysz raz, np. w evencie button1_Click.

1.A jak sprawdzić że jest połączony, jest do tego jakaś flaga?? Wtedy by pozostała w tej funkcji tylko z warunkiem ze tylko raz zostanie poprawnie wykonana??

1 użytkowników online, w tym zalogowanych: 0, gości: 1