Ejemplo n.º 1
0
        private void MessageCallBack(IAsyncResult aResult)
        {
            try
            {
                int size = sck.EndReceiveFrom(aResult, ref epRemote);       //Mesaj gönderebilmek için MessageCallBack fonksiyonunu oluşturduk.
                if(size > 0)                                                //Gönderilen mesajın boyu 0'dan büyükse yani boş mesaj değilse koşulunu oluşturduk.
                {                                   
                    byte[] receivedData = new byte[1400];                   //iletilecek olan mesajı byte türüne dönüştürdük.
                    receivedData = (byte[])aResult.AsyncState;              //Arka arkaya 1 den fazla mesaj gönderilmesi koşulunu ayarladık.
                    ASCIIEncoding eEncoding = new ASCIIEncoding();          //Girilen mesajı ASCII ile kodladık.

                    string receivedMessage = eEncoding.GetString(receivedData);     //Gönderilen mesajı tekrar string tipine dönüştürdük bu sayede listboxa ekleme yapabileceğiz.
                    listMessage.Items.Add(FriendUserName.ToString() + " => " + receivedMessage);             //Listbox'a gönderilen mesajlar eklendi ve her iki kullanıcının görmesi sağlandı. 

                }
                byte[] buffer = new byte[1500];
                sck.BeginReceiveFrom(buffer, 0, buffer.Length, SocketFlags.None, ref epRemote, new AsyncCallback(MessageCallBack), buffer);

                //Yeni mesaj göndeimi için buffer boşaltıldı. soket parametreleri girildi.
            }
            catch (Exception exp)
            {
                MessageBox.Show(exp.ToString());        //Hata yakalaması yapıldı. Alınan hata messagebox üzerinde gösterildi.

            }
        }
Ejemplo n.º 2
0
 private void FriendUserName_TextChanged(object sender, EventArgs e)
 {
     string FriendName = FriendUserName.ToString();
 }