🙂 İNSANLARIN EN HAYIRLISI INSANLARA FAYDALI OLANDIR 🙂

Ramazan HABER / C# / basit soket buna bak

 

1-) C# -  basit soket buna bak

telnet ile bağlanmak için

denetim masası-> windows özelliklerini aç veya kapattan-> telnet istemcisini aç

sonra cmd ye

telnet 127.0.0.1 600

burada 127.0.0.1 = localhost

burada 600 = portu

bağlanınca merhaba yaz ve cmd yi kapat sonra c# da consola bak yazmıştır

1-)server.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Net;

using System.Net.Sockets;

using System.IO;

namespace server1

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

        public void dinle()

        {

            try

            {

                Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.IP);//

                                                                                                      //InterNetwork = ipv4 ailesi için

                                                                                                      //SocketType.Dgram= UDP için

                                                                                                      //SocketType.Stream= TCP için

                                                                                                      //ProtocolType.IP = TCP ve UDP de ip yi kullanır

                s.Bind(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 600));

                //127.0.0.1 = demek localhost

                //6000 = demek port demek 0-65000 arasında deger verebılırsın 1024 den buyuk vermen senin  için iyidir

                s.Listen(9);//dinleme kuyrugu 9 girdik

                Socket client = s.Accept();//gelecek olan clienti kabul ettik

                NetworkStream ns = new NetworkStream(client);//NetworkStream=client ile haberleşmek için

                StreamReader sr = new StreamReader(ns);//StreamReaderclient ile haberleşmek için

                Console.WriteLine(sr.ReadToEnd());//gelen ne varsa okuyup ekrana yazdık

                sr.Close();

                ns.Close();

                s.Shutdown(SocketShutdown.Receive);//soketi kapattık veri alış verişini

                client.Shutdown(SocketShutdown.Receive);//client ile bağlantıyı kopardık

            }

            catch (SocketException de)

            {

                Console.WriteLine("serverda hata var \n" + de.Message);

            }

        }

        private void button1_Click(object sender, EventArgs e)

        {

            dinle();

        }

    }

}

2-)client.cs // istersen telnet ile veri gonder istersen buradan

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.Net;

using System.Net.Sockets;

namespace server1in_clienti

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

        public void dinle()

        {

            Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream,ProtocolType.IP);

            s.Connect(IPAddress.Parse("127.0.0.1"), 600);

            byte[] buffer = Encoding.ASCII.GetBytes(textBox1.Text);//girilen karakterleri asciye cevir ve byte dizisine at çünkü TCP old

            s.Send(buffer);//bufferimizi yani verimizi gonderelim

            s.Close();//socketi kapatalım

        }

        private void button1_Click(object sender, EventArgs e)

        {

            dinle();

        }

    }

}

 2021 Ocak 18 Pazartesi
 547