# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > WCF , Web Services , .Net Remoting >  مشکل با برنامه Chat در Socket Programming

## Blackk_lightt

سلام
من این برنامه رو برای چت بین دو کامپیوتر نوشتم
ولی دوتا مشگل داره :
1-هر کامپیوتر فقط میتونه یه بار پیغام بفرسته و دیگه انگار فرستاده نمیشه
2-مثلا اگه کامپیوتر اول "123" بفرسته بعد کامپیوتر دوم بفرسته "456" برای کامپیوتر اول همون رشته خودش یعنی "123" میره !!!
 :متفکر:  :خیلی عصبانی:  :عصبانی: 
کد کلاینت :

    public partial class Form1 : Form
    {
        Socket Server;
        byte [] Buffer = new byte [1024];
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            IPEndPoint ipep = new IPEndPoint(IPAddress.Parse(textBox1.Text),6060);
            Server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            Server.Connect(ipep);
        }
        private void button2_Click(object sender, EventArgs e)
        {
            Buffer = Encoding.ASCII.GetBytes(textBox1.Text);
            Server.Send(Buffer);            
        }
    }

کد سرور :

    public partial class Form1 : Form
    {
        Socket worker;
        Socket SCK;
        byte[] buffer = new byte[1024];
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            buffer = Encoding.ASCII.GetBytes(textBox1.Text);
            worker .Send(buffer);
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            SCK = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            IPEndPoint IPEND = new IPEndPoint(IPAddress.Any, 6060);
            SCK.Bind(IPEND);
            AsyncCallback callBackMethod = new AsyncCallback(AcceptCallback);
 
            SCK.Listen(100);
            SCK.BeginAccept(callBackMethod , SCK );
            textBox1.Text = "Listening ...";
        }
        private void AcceptCallback(IAsyncResult ar)
        {
            Socket temp = ((Socket)ar.AsyncState);
            worker = temp.EndAccept(ar);
            AsyncCallback ReceiveMethod = new AsyncCallback(ReceiveCallBack);
            worker.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None,ReceiveMethod , worker);
            MessageBox.Show("Accept");
        }
        private void ReceiveCallBack(IAsyncResult ar)
        {
            Socket worker_ = ((Socket)ar.AsyncState);
            int bytesReceived = worker_.EndReceive(ar);
            string str = System.Text.UTF8Encoding.UTF8.GetString(buffer);
            MessageBox.Show(str);
 
        }
    }
 

من عجله دارم
ممنون
بای

----------


## Blackk_lightt

سلام
کسی بلد نیست ؟
من عجله دارم
خواهش  :ناراحت:  :ناراحت:  :ناراحت: 
اگه کسی یه مثال چت ساده هم بزاره ممنون میشم

----------


## elizabet

دوست عزیز این یه برنامه چت با سی شارپ هست که  source شو اینجا گذاشتم امیدوارم به دردت بخوره

----------


## razavi_university

در قسمت نمونه برنامه ها يكي دو مورد نمونه برنامه در اين رابطه دارد كه از آنها مي توانيد استفاده كنيد

----------


## honey5199

سلام براي باز كردن زيپ اين فايل احتياج به پسورد داره ميشه راهنمايي كنيد

----------

