C# Port Dual Port Scanner

23. July 2009

Read this article in your language IT | EN | DE | ES

Merhaba arkadaşlar  bu örnek projemize   bir port scanner  yapıcaz  vs 2008 

üzerinde bir console uygulaması acarak  uygulamamızı  yazmaya baslıyalım

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net.Sockets;

namespace PortScanner
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private int StartPort;
        private int EndPort;

        private void btnstart_Click(object sender, EventArgs e)
        {

  // bu işlemde ttxtbox  degeri boş bir degerse hata gösteriyoruz  bitiş port sayısı 0 küçükse  tekrar -hatayı kullanıcıyya gösteriiyoruz  
            if (txtipAdres.Text == "")
            {

                MessageBox.Show("Lütfen İp Adresi Giriniz \r\n", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);

            }
            if (numend.Value <= 0)
            {
                MessageBox.Show("Lütfen Bitiş Port 0 Büyük Giriniz", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);


            }
            // hangi aralıktaki port  taratmak istiyorsak degerleri verelim
            StartPort = Convert.ToInt32(numstart.Value);
            EndPort = Convert.ToInt32(numend.Value);

            // Progres bar reset

            prgScanning.Value = 0;

            // İlerlencek işlem değerini  belirle
            prgScanning.Maximum = EndPort - StartPort + 1;

            //   kullanıciya fareyi bekleme modunda göster
            Cursor.Current = Cursors.WaitCursor;

            // döngü  içinde işlem  yapıyoruz  
            for (int CurrPort = StartPort; CurrPort <= EndPort; CurrPort++)
            {
                var TcpScan = new TcpClient();
                try
                {
                    //Baglancak İp Numarısı Belirle
                    TcpScan.Connect(txtipAdres.Text, CurrPort);
                    //   eger işlemde bir  açık port varsa onu açık  göster
                    txtLog.AppendText("Port " + CurrPort + " open\r\n");
                }
                catch
                {
                    // eger işlemde bir  kapalı port varsa onu  kapalı göster
                    txtLog.AppendText("Port " + CurrPort + " closed\r\n");
                }
                //  işlem ilerledikce adım ProgressBar işlemini yapsın
                prgScanning.PerformStep();
            }
            //   fareyi normal mod göster
            Cursor.Current = Cursors.Arrow;
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            lblsaaat.Text = DateTime.Now.ToLongTimeString();
            lbltarih.Text = DateTime.Now.ToShortDateString();
        }

        private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            WebBrowser vb = new WebBrowser();

            vb.Navigate("http://www.orhanturk.com.tr", "www.orhanturk.com.tr");
            ;
        }
    }
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net.Sockets;

namespace PortScanner
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private int StartPort;
        private int EndPort;

        private void btnstart_Click(object sender, EventArgs e)
        {
            if (txtipAdres.Text == "")
            {

                MessageBox.Show("Lütfen İp Adresi Giriniz \r\n", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);

            }
            if (numend.Value <= 0)
            {
                MessageBox.Show("Lütfen Bitiş Port 0 Büyük Giriniz", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);


            }
            // hangi aralıktaki port  taratmak istiyorsak degerleri verelim
            StartPort = Convert.ToInt32(numstart.Value);
            EndPort = Convert.ToInt32(numend.Value);

            // Progres bar reset

            prgScanning.Value = 0;

            // İlerlencek işlem değerini  belirle
            prgScanning.Maximum = EndPort - StartPort + 1;

            //   kullanıciya fareyi bekleme modunda göster
            Cursor.Current = Cursors.WaitCursor;

            // döngü  içinde işlem  yapıyoruz  
            for (int CurrPort = StartPort; CurrPort <= EndPort; CurrPort++)
            {
                var TcpScan = new TcpClient();
                try
                {
                    //Baglancak İp Numarısı Belirle
                    TcpScan.Connect(txtipAdres.Text, CurrPort);
                    //   eger işlemde bir  açık port varsa onu açık  göster
                    txtLog.AppendText("Port " + CurrPort + " open\r\n");
                }
                catch
                {
                    // eger işlemde bir  kapalı port varsa onu  kapalı göster
                    txtLog.AppendText("Port " + CurrPort + " closed\r\n");
                }
                //  işlem ilerledikce adım ProgressBar işlemini yapsın
                prgScanning.PerformStep();
            }
            //   fareyi normal mod göster
            Cursor.Current = Cursors.Arrow;
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            lblsaaat.Text = DateTime.Now.ToLongTimeString();
            lbltarih.Text = DateTime.Now.ToShortDateString();
        }

        private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            WebBrowser vb = new WebBrowser();

            vb.Navigate("http://www.orhanturk.com.tr", "www.orhanturk.com.tr");
            ;
        }
    }
}

 Evet arkadaşlar bir makalenin sonuna daha gelmiş olduk  tekrar yeni bir makkalede görüşmek üzere herkeze

başarılar calışmadan kimse yol alamaz   sizlerde , de evde bol bol  örnek yaparak başarınıza  yeni degerler ekleyiniz

Sagılarımla Orhan Türk 

 

FacebookDigg It!DZone It!StumbleUponTechnoratiRedditDel.icio.usNewsVineFurlBlinkList

C#

Comments

12/10/2009 4:14:14 PM #
thanks!  very helpful post!! like the template btw ;)
1/4/2010 11:15:49 AM #
I just hope to have understood this the way it was meant
yasemin
yasemin
3/30/2010 5:28:26 PM #
soket proğramlamaya yeni başladım.portları kontrol etmeye çalışıyorum.bu kodların ekran çıktısınıda katsaydınız çok iyi olcaktı.ekran çıktısı yada kaynak kodu eklerseniz çok memnun olurum.iyi çalışmalar
3/31/2010 6:48:54 AM #
I love keeping up to date on everything new so i’ll definitely be bookmarking this site.
4/3/2010 10:43:32 PM #
Hi there, just wanted to leave a quick comment about the interface of your blog. It is really easy on the eye while also being catchy. I think I will do something similar for my blog as well. Thanks for the nice blog share.
4/23/2010 8:01:05 AM #
I was wondering what is up with that weird gravatar??? I know 5am is early and I'm not looking my best at that hour, but I hope I don't look like this! I might however make that face if I'm asked to do 100 pushups.
4/24/2010 7:23:01 AM #
He knows not his own strength that hath not met adversity.
5/7/2010 5:24:29 AM #
Just wanted to grant you a shout from the valley of the sun, great information. Much appreciated.
5/9/2010 9:21:25 AM #
Marvelous! Not clear for me, how frequently you updating your site?
5/17/2010 12:47:22 AM #
I know 5am is early and I'm not looking my best at that hour, but I hope I don't look like this! I might however make that face if I'm asked to do 100 pushups.
9/4/2010 4:38:46 PM #
Awesome post. Will check back often.

Add comment


(Will show your Gravatar icon)

biuquote
  • Comment
  • Preview
Loading



Sayfa 0.015625 saniyede yuklendi.