• Forum vBulletin altyapısından Xenforo altyapısına geçirildi, bu sebeple eski şifreleriniz ile foruma giriş yapamayacaksınız, parolamı unuttum adımından mailiniz ile şifre sıfırlayarak giriş yapabilirsiniz.

    Üyeliklerinde geçerli bir mail adresi olmadığı için sıfırlama yapamayacak kullanıcılar forum kullanıcı adlarını ve yeni şifrelerini yazarak info@maxigame.org adresine şifre sıfırlamak istediklerine dair bir mail göndersinler şifrelerini sıfırlayıp mail adreslerini güncelleyeceğiz. Şifreniz sıfırlandıktan sonra foruma giriş yapıp tekrar istediğiniz gibi değiştirebilirsiniz.

Vb.net hata ayıklama[ders]

  • Konuyu başlatan Konuyu başlatan bjlkl
  • Başlangıç tarihi Başlangıç tarihi

bjlkl

Aileden
Aktiflik
K.Tarihi
15 Ocak 2011
Mesajlar
215
Puanı
14
Konum
İstanbul
bu dersi paylaşmamın sebebi programınızı kullanan kişinin karşılaşıcağı hatalardan dolayı programın çökmesiyle kafayı yememsi için :D yani programın devamlılığının sağlanması için hatayı kullanıcaya göstericek kodlar yazmamız gerekicektir. bu kodlar programımızın çökmesini engelliycektir. en basit haliyle aşağıdaki gibi bir hata ayıklama sistemi yapabiliriz:
DERS 1:
[BILGI]Formumuza bir buton ekliyoruz ve click olayına aşağıdakileri yazıyoruz:
PHP:
On Error GoTo hatakumesi

        Dim yas, dogumyili, simdikiyil As Integer

        simdikiyil = "bjlkl2011"
        dogumyili = 1995
        yas = dogumyili - simdikiyil

hatakumesi:
        MsgBox("Hata Mesajı:" & vbCrLf & "Hata Numarası=" & Err.Number & vbCrLf & "Hata Özellikleri:" & Err.Description, MsgBoxStyle.Critical, "Hata!")

simdiki yıl değerini integer tanımladık fakat bjlkl2011 yazıyor. bu durumda programımız işlemi yapamayack ve çökücektir. bu yüzden On Error GoTo ile hata ayıklamaya başlıyoruz.
hatakumesi: den sonra gelen msgbox ta programımızın neden hata verdiğini açıklıyoruz. bu msgbox taki kodların açıklaması aşağıdaki gibidir:

& => Ekleme
vbCrLf =>Bir alt satıra geçme
Err => Hata
Err.Number => Hata numarası
Err.Description => Hata açıklaması


En basti haliyle kendi programımızdaki hataları böyle ayıklayabiliriz.[/BILGI]

DERS 2:
[BILGI]Bu derste Try-Catch kullanmayı öğrenicez. if-else, do-while fln dedğimizde herkesin içini önce bir korku sarar fakat öğrendikten sonra bize çok kolay gelir. ilk olarak programımıza 1 textbox ve 1 buton ekliyoruz. Butonun click olayına aşağıdakileri yazıyorum:

PHP:
Dim a As Integer
        a = TextBox1.Text
        a += 1
        MsgBox(a)
programımızı çalıştırıyoruz TextBox1 e bir harf girdikten sonra butona basarsak a = TextBox1.Text satırında hatayla karşılacağız ve programız çökücek çünkü textbox1 e sayıdeğeri girmemiz gerekiyor. Bu yüzden hatanın başladığı yere Try yazıyorum. yeni buton kodumuz aşağıdaki gibi oluyor:
PHP:
 Dim a As Integer
        Try
            a = TextBox1.Text
            a += 1
            MsgBox(a)
        Catch ex As Exception
            MsgBox("Hata:" & ex.Message)
        End Try

Catch ex As Exception daki ex bizim hatamız ve hatayı göstericek olan mesaj kutusunda ex.Message olarak hatanın özelliklerini açıklayabiliyoruz.
ya da aşağıdaki gibide MsgBox ı kodlayabiliriz(Catch ex As Exception ın altına yazıyoruz.):
PHP:
MsgBox("Hata Mesajı:" & vbCrLf & "Hata Numarası=" &  Err.Number & vbCrLf & "Hata Özellikleri:" & Err.Description,  MsgBoxStyle.Critical, "Hata!")

bu durumda ilk dersimizdeki gibi hatayı geniş çaplı olarak kullanıcıya anlatmış oluyoruz.

ilk dersteki On Error GoTo her şekilde karşımıza bir mesaj kutusu çıkarıcaktır. "aaa gene mi hata" demeyin çünkü çıkan mesaj kutusunda hata numarası=0 yazar ve hata özelliği kısmı boş kalır. yani programın hatyal karşılaşmadığını gösterir biz bunun hata yokken çıkmasını engellemek için Try-Catch kullandık ve sadece hata varken hata mesaj kutusu çıksın dedik.[/BILGI]


umarım faydalı olmuştur. artık programlarınız çökmiycek. Try-Catch yazarken her zaman hatanın başaldığı satıra Try yazıyoruz unutmayın.
 
Son düzenleme:
Geri
Üst