vb.net

Merhabalar bu içeriğimiz de sizler için çok güzel bir uygulama sunacağız. Visual Basic de local port scanner ayarları yapacağız. Aklınıza direkt Visual Basic ile Local Port Scanner Ayarları nasıl yapılır? Ne işe yarar?  Winsock nedir? Winsock kodlama da ne işe yarar? Gibi sorular gelebilir. Bu içeriğimiz o sorularınıza cevap olacaktır emin olabilirsiniz.

Visual Basic ile Local Port Scanner Ayarları
Visual Studio Görseli

Visual Basic ile Local Port Scanner Ayarları Ne İşe Yarar

Visual Basic ile Local Port Scanner Ayarları ile bilgisayarınız da bulunan açık portları tarayabilir veya kapatabilirsiniz. Bunun yanı sıra açmış olduğunuz portun açık bir vaziyette çalışıp çalışmadığını denetleyebilirsiniz. Winsock kod komutunu öğrenmek ve onunla bir şeyler yapmak isteyenlere de süprizimiz var. Kod metnimiz içerisinde Winsock kod komutu ile yapabileceğiniz alan bulunmaktadır. Unutulmaması gerekir ki Winsock kod komutu kod metinin de ws diye geçmektedir. Detaylı kod alanı anlatımımız yerine adım adım ilerlemeniz için yönlendirmelerimizi kod metni içinde yaptık. Bu saye de kodları kopyala yapıştır yapmaktan kurtulacaksınız. Bu da size deneyim kazandıracaktır. Sizler de durmayın ve bu zevkli uygulamayı hemen deneyin.

Kod Alanı

Dim start As Boolean
Private Sub cmdBasla_Click()
mnuDosya.Enabled = False ' popup menüyü disable ettim
mnuYardim.Enabled = False ' buda diğer popup menu
cmdBasla.Enabled = False ' basla butonunu disable ediyorum
cmdDur.Enabled = True ' dur butonu enable ediyorum..
txtBaslangic.Enabled = False ' text boxları disable ediyorum
txtBitis.Enabled = False ' bunuda tabi ;)
hafizatemizle ' değişkenleri hafızadan siliyorum yoksa kaldığı yerden
' devam eder ;)
WS.Close ' winsock 'u kapatıyorum ..

bport = txtBaslangic.Text ' bport değişkenine txtbaslangıç' ın değerini atıyorum ...(bport başlangıç portu)
sport = txtBitis.Text ' sportada txtbitis'in değerini atıyorum.(sport son port bitiş yani ;) )

start = True ' start= true yapıyorum..bunu programı durdururken kullanacağım
On Error GoTo hata ' hata olursa hata label'ına göderiyorum ....
' burada olacak hata portları tararken
' portun kullanımda olduğu hatası... zaten yakalamak
' istediğimiz olay budur..

For i = bport To sport ' baslangiç portu bitis portu olana kadar
' dönecek döngü kuruyoruz

bport = bport + 1 ' her seferinde portu bir artırıoruz . . .
Bar.Panels(1).Text = bport & ". port taranıyor..." ' status barda hangi portta olduğumuzu görebilmek için

DoEvents ' işin en önemli yeri yavaşlatıyor ama programın kilitlenmeden çalışmasını sağlıyor..
' statusbarda sırasıyla portlar bu sayede görülebiliyor...
' bir kısım işlemleri windows a yaptırıyor...

WS.LocalPort = bport ' winsock local porta bport atanıyor ..sırasıyla dönecek ...
WS.Listen ' bu port dinleniyor

DoEvents ' olmassa olmaz ;) yavaş ama olsun
If start = False Then Exit Sub ' yukarıda çıkış için kullanacağımız start bu..false ise çık yani :)
If bport >= sport Then GoTo bitti 'basladığımız port bitecek porta gelince bitti labeline git
WS.Close ' winsock close ...her seferinde başka bir porta bakacağımız için
' her dinlemeden sonra close etmeliyiz

Next i ' dönelim ;))

hata: 'hata olursa buraya geliyor
If Err.Number = 10048 Then 'hata eğer 10048 ise
lstSonuc.AddItem "-" & bport & " numarılı port kullanılıyor . . ;)" ' listeye port numarasını yaz
Beep ' bip le
Resume Next ' sonrada devam etki başka hangi port war görelim
End If 'end if

bitti: 'biitiyse
MsgBox "Portlarınızın tarama işlemi sonuçlandı ..." ' msg box çıkarıyor ....
mnuDosya.Enabled = True 'dur a basınca baslata basınca
mnuYardim.Enabled = True 'enable ve disable olan şeyler
cmdBasla.Enabled = True ' tam tersi oluyor
cmdDur.Enabled = False
cmdTemizle.Enabled = True
txtBaslangic.Enabled = True
txtBitis.Enabled = True
start = False 'burası durdurma değişkeni false yapıp döngüden çıkarıyoruz..
hafizatemizle
WS.Close
Bar.Panels(1).Text = "Programmed By Mafilard"

End Sub

Private Sub hafizatemizle()
On Error Resume Next
bport = "" 'bport ve sport değişkenlerini her seferinde boşaltıyorum
sport = "" 'böylece başlata ve dur a bastığımızda tekrar tazelenmiş oluyor
' belki gereksiz ama iki satır eksik kod yazacağım diye
'runtime da oluşan salak bir hatayla uzun uzun uğraştırıyo
'bu tür şeyler..o yüzden siz yazmassanız yazmayın ;)

End Sub

Private Sub cmdDur_Click()
cmdDur.Enabled = False
mnuDosya.Enabled = True 'dur a basınca baslata basınca
mnuYardim.Enabled = True 'enable ve disable olan şeyler
cmdBasla.Enabled = True ' tam tersi oluyor
cmdTemizle.Enabled = True
txtBaslangic.Enabled = True
txtBitis.Enabled = True
start = False 'burası durdurma değişkeni false yapıp döngüden çıkarıyoruz..
hafizatemizle
WS.Close
End Sub

Private Sub cmdTemizle_Click()
lstSonuc.Clear ' lisbox'ı temizliyoruz
cmdTemizle.Enabled = False
End Sub

Private Sub Form_Load()
cmdTemizle.Enabled = False

End Sub

Private Sub mnuitemCikis_Click()
start = False
WS.Close
hafizatemizle
End
End Sub
 

VB.NET ile ilgili dikkatinizi çekebilecek diğer örnek uygulamalarımız

1. Visual Basic Kurulumu ve Kaldırılması
2. Visual Basic .Net’de Yazıcı Uygulaması Geliştirme Komutları
3. Visual Basic Net’de Rastgele Sayı Üretme Uygulaması
4. Visual Basic Access Elle Bağlantı Nasıl Yapılır?
5. VB.NET de Formları İç İçe Açma

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir