Favorilerine Ekle | Giriş Sayfan Yap | Tavsiye Et

 

Kurs Tanıtım Sayfası | Süper Üye Kimdir? | Menü Tasarımı Konulu Örnek Ders
Kod İndir| Hazır Kodlar | Makaleler| İpuçları | VB .NET Kursu | Dersler | Forum | Alt Bölümler | Servisler
    Merhaba Misafir
    anasayfa » visual basic makaleleri » Acemiler için VB Dersleri - DERS 6: HATA DENETİMİ
Üye Girişi
Kullanıcı Adı:  
Şifre : 
Kaydet ?
Siteden tam olarak faydalanabilmek için üye olmalısınız.
Unuttuğunuz şifrenizi öğrenebilmek için kayıt sırasında verdiğiniz Hatırlatma Cevabı'nı bilmeniz gereklidir.
Şifre hatırlatma işlevini sadece 3 defa kullanma hakkınız vardır.
Kullanıcı adını ve şifresini unutan üyelere email ile yardım verilmez.

Aktivasyon Gelmedi mi?Aktivasyon mesajınız email adresinize gelmedi mi?
Buraya tıklayarak bir kez daha aktivasyon mesajı gönderilmesini sağlayabilirsiniz.
Lütfen email hesabınızın BULK ve SPAM klasörlerini de kontrol ediniz.
Rastgele Makale

windows xp de bilgisayarı kapatma

Yazar: freeyzc
selam arkadaşlar
ben bu win xp kapatmayı birçok yerde aradım fakat bulamadım
belki benim gibi arayanlar da vardır diyerek burada da yazmayı düşündüm yararım olursa ne mutlu bana
bu konuyu ipucu olarak da yazmıştım fakat yazım yanlışı olduğu için alınmamış benim hatam affoluna
bu yayınlanırsa sevinirim
neyse lafı fazla uzatmayalım


Webmasterlar
Sitenize Ekleyin!
Sitenizde "Son Eklenen 10 Visual Basic Yazısı"'nı göstermek ve içeriğini zenginleştirmek için buraya tıklayınız.

Vbasicmaster.com'a link verin!
Aşağıdaki minik banneri sitenize eklemek için tıklayın!

Üye Sayısı:
Ziyaretçiler nerede?
Yayın № : 275
Yayın Tar:17.05.2004
Yazar : Webmaster
Hit :17118

Bu Yazarın Yazıları Sadece bu yazarın  göster
Bu Yazıyı Tavsiye Et

Ders sonunda yapabilecekleriniz:

-Hata denetimini ve araçlarını açıklamak.

I. HATA DENETİMİ
Hata denetimi (troubleshooting) programda oluşan çalışma zamanı ve diğer kodlama hatalarının tanımlanması (teşhis) ve giderilmesi için yapılan çalışmalardır.

Visual Basic, programların yazılması (derlenmesi ve çalıştırılması) sırasında karşılaşılan hatalara karşı geliştirilmiş bir hata bulma ve düzeltme (debugging) olanağına sahiptir.

Programın çalıştırılması sırasında kendisinden kaynaklanan bir hata varsa, hata bildirilir. Bunun dışında çalışma zamanı hataları ise, programın çalışması sırasında beklenmeyen bir durum sonucu oluşur. Örneğin okunacak dosyanın olmaması gibi. Bu durumda program hata verir. İşte bu durumlara karşı alınan önlemlere hata denetimi denir.

A. ÇALIŞMA ZAMANI HATALARININ KONTROLÜ
Çalışma zamanı hataları (run-time errors) programın çalışması sırasında oluşan hatalardır. Program hazırlanmış ve kullanıcıya sunulmuştur.

Örneğin programın çalışması sırasında belleğin dolması ya da bir hesaplamada sıfıra bölüm sonucu değer oluşmaması gibi durumlar birer çalışma zamanı hatasıdır.

Çalışma zamanı (run-time) hatalarına karşı herhangi bir önlem alınmazsa program hata verir ve kesilir. Diğer bir açıdan; bu durum kullanıcılar karşısında düşülebilecek en kötü durumlardan birisidir. Bu nedenle çalışma zamanı hatalarına karşı belli önlemler daha önceden alınmalıdır.

Bu hatalar 1-1000 arasında hata kodu döndürürler. Bu hata kodları On Error deyimi ve Err nesnesi ile birlikte ele alınarak hataların değerlendirilmesi ve programın uygun biçimde yönlendirilmesi sağlanır.

Tablo: Kontrol edilebilir bazı hatalar

Kod Mesaj

3 Return without GoSub (GoSub'sız Return)
5 Invalid procedure call (geçersiz procedure çağırması)
6 Overflow (taşma)
7 Out of memory (bellek yetersiz)
9 Subscript out of range (dizi dışı)
10 This array is fixed or temporarily locked (dizi sabit ya da kilitli)
11 Division by zero (sıfıra bölme)
13 Type mismatch (tip uyumsuzluğu)
14 Out of string space (string alanı yetersiz)
..

B. ON ERROR DEYİMİ
Hata oluşumunda; mesaj vermek ve programın kontrolünü sağlamak için belli bir program parçasının işletilmesini sağlanabilir. Bu işlem için hata kontrolüyle ilgili olarak bir program bloğunun yazılmasını sağlanır.

Yapısı:

On Error GoTo satır
On Error Resume Next
On Error GoTo 0

On Error deyiminin parametreleri şunlardır:

Parametre Açıklama
Go To 0 Procedure'daki hata kontrolünü iptal eder.
GoTo satır / etiket Hata kontrolü satırının belirtilen satırdan ya da etiketten başlatılmasını sağlar.
Resume Next Hatanın ardından programın bir sonraki deyimi işleyerek programı çalıştırmayı sürdürmesini sağlar.

Eğer programcı, programında bir On Error deyimi kullanmaz ve olası hataları kontrol altına almazsa; hata oluştuğunda program çalışma zamanı içinde hatayı verir ve kesilir.

Program içinde bir hata denetimi yapılırsa; hata oluştuğu anda program kontrolü, hata kontrolü kısmına atlar. Hata denetimi; Resume, Exit Sub ya da Exit komutuna kadar aktif kalır. Hata denetiminin ardından hatanın tanımlanması için Err nesnesinin Number özelliği kullanılır.

Örnek : Sıfıra bölünme hatalarına karşı tuzak

Aşağıdaki örnekte OnError ile 11 (Division by Zero) hatası kontrol edilmektedir:

Sub Button1_Click ()
On Error GoTo HataKontrol
A = 15
B = 0
Sunuc = A / B

Exit Sub 'burada programa son verilir.

HataKontrol:
Select Case Err.Number
Case 11: Mesaj = "Sıfıra bölünme hatası oluştu!!!"
End Select
MsgBox Mesaj
Resume Next

End Sub

NOT: Bu dokümanlar Faruk Çubukçu tarafından hazırlanmıştır. Burada adı geçen ticari ünvanlar ve markalar bilgi amaçlı kullanılmışlardır ve kendi imtiyazlarına sahiptirler. Bu dokümanlar ticari amaçlı olarak kullanılmaz. Daha fazla bilgi için www.farukcubukcu.com adresine bakınız.

II. HATA DÜZELTME ARAÇLARI
Bir Visual Basic programı geliştirirken ya da programın çalışması sırasında bir hata ile kesilmesinden sonra hatanın bulunması ve giderilmesi için belli araçlar kullanılır. Bunların başında Debug (Hata Giderme) araç çubuğu gelir:


Debug araç çubuğunun kullanılması için programın kesilmesi gerekir. Kesme (break) işlemi hata sonucunda ya da manuel olarak da yapılabilir:

Programın kesilmesi ya da Break düğmesine tıklanarak program debug moda alınır. İşte bu durumda programcı Visual Basic hata giderme araçlarını kullanır

A. KESME NOKTASI (TOGGLE BREAKPOİNT)
Programın bir yerine gelip durmasını istiyorsunuz. Ve o aşamada değerleri kontrol edeceksiniz. İşte bu olanağı size kesme noktası sağlar.

Kod içinde kesme noktası ile işaretlenen satır işletilmeden önce program durur. Kesme noktası genellikle programı belli bir yerde durdurup o aşamada bazı değişkenlerin değerlerinin kontrol edilmesini sağlar.

Bu işlem için araç çubuğundaki Toogle BreakPoint düğmesi kullanılır. Tekran tıklanarak kesme noktası kaldırılır.

B. BİLGİ PENCERELERİ (LOCALS WİNDOW, IMMEDİATE WİNDOW VE WATCH WİNDOW)
Program kesildikten sonra; Procedure içinde bir değişkenin ya da bir ifadenin seçilerek değerinin ne olduğuna bakılmak istenirse o zaman anlık izleme penceresi (instant watch) kullanılır.

Locals Window:
Program kesildiğinde bulunulan procedure içinde tanımlanan bütün değişkenlerin değerini verir:

Expression sütünunda değişkenlerin adları listelenir. Bütün class modüllerinde buradaki ilk değer <Me> değeridir. Bu değerin üzerine tıklanarak genişletilir.
Value sütünunda ise değişkenin değeri görünür. Bu değerin üzerinde çift tıklanarak değişiklik yapılabilir.

Immediate Window:
Program kesildikten sonra; procedure içinde bir değişkenin ya da bir ifadenin seçilerek değerinin ne olduğuna bakılmak istenirse o zaman anlık izleme penceresi kullanılır.

Anlık izleme penceresinde değişkenlerin ya da ifadelerin değerlerini göstermek için (Print) deyimi ya da ? kullanılır. Ayrıca istenirse kod satırından Immediate Window ekranına sürükleme yapılır.

Örnek:

? toplam


III. UYGULAMA
6 Owerflow ve 13 Type Mismatch (değişken türleriyle ilgili sorunlar) hataları üzerine bir hata kontrolü satırı yazın:

Örnek:

On Error GoTo HataKontrol
...

HataKontrol:
Select Case Err.Number
Case 6: Mesaj = "Bellek dolu!!!"
End Select
MsgBox Mesaj
Resume Next


IV. GÖZDEN GEÇİRME
1. Programınızda daha az hata ile karşılaşmak için neler yaparsınız?
2. Çalışma zamanı hatalarına karşı neler yapılır? Açıklayın.
3. Resume deyiminin görevi ve parametreleri nelerdir?
4. Err nesnesinin görevi ve metotları nelerdir?



Üye iseniz bu dersi dokuman formatında indirebilirsiniz.




Bu sayfa için henüz yorum eklenmemiş.

© Hakan Ersöz 2000-2013| Üyelik Sözleşmesi | | Ödeme Bildirimi
Sitemizden yenilikleri hemen öğrenin, pop upları engelleyin, chat yapın... ToolBarımızı indirin:
Vasicmaster Toolbar'ı indirin