Visual LISP ile hata kontrolü
![]() |
Yazar | Muharrem Koçyiğit |
| Mesleği | Makine Teknikeri | |
| AutoCAD, AutoLISP, Visual LISP | ||
| Prosteel Uzmanı | ||
Merhaba arkadaşlar,
Hatanın oluştuğu sırada, hatayı tespit edip programın akışını düzenlemek VisuaLisp ile artık mümkün. Hataları yakalamak sizin elinizde. Şimdiye kadar oluşan herhangi bir hatanın yüzünde programın çıkışını bekleyip, ortalığı düzenlemekle işimiz ibaretti. Yani sistem değişkenlere ayıt olan eski değerlerini girmek, AutoCAD’ı bir önceki görünüme tekrar geri getirmek gibi…
Bahsedeceğim fonksiyonun ismi (vl-catch-all-apply). İsmindede anlaşıldığı gibi ingilizce olan catch terimi türkçemizdeki yakalamak kelimesı ile eş değerde. Fonksiyonu çalıstırmak için devamlı iki argüman ile çağırmalısınız. Birinci argüman çalıstırmak istediğiniz fonksiyonun ismi, ikinci argüman ise o fonksiyona ait olan argümanların liste olarak verilmesi. Lisp dilinde bulunan (apply) fonsiyonun gibi çalışır. Yanlız aralarında bir fark var. Oluşabilecek herhangi bir hatadan sonra program çalısmaya devam eder ve dönüş değeri olarak da yeni bir veri tipi VL-CATCH-ALL-APPLY-ERROR (Hata-Nesnesi) verir. Şimdi asağıda verilen birkaç örneklerle fonksiyonları biraz daha yakında tanıyalım.
Fig.1 - Fonksiyon test1 ile hata olusturuyoruz. |
Hatanın neden oluştuğunu göstermek icin (vl-catch-all-error-message) fonksiyonu ile anlaşılır bir şekilde yazdırabilirsiniz. Veritipi değeri String olarak geçer.
Fig.2 - Fonksiyon (vl-catch-all-error-message error-obj) |
vl-catch-all-apply ile yapılan işlemde programda hata nesnesinin oluşup oluşmadığını kontrol etmek için vl-catch-all-error-p fonksiyonunu kullanmak bize kolaylık sağlayacaktır. Dönüş degeri Boolean yani mantık veri tipidir. Hata Nesnesi oluşmuşsa T yoksa Nil verecektir.
Fig.3 - Fonksiyon (vl-catch-all-error-p arg) |
Visual Lisp de bulunan bu üç fonksiyonunu asağıda gördüğünüz gibi kullanabilirsiniz:
Fig.6 - Fonksiyon (test2) ile bir örnek |
Kolay gelsin
Yazıya ait dosyalar:
VisualLispErrors.zip
»(1021 bytes, 59 kez indirilmiş, 2008 February 15)
VisualLispErrors.lsp dosyası. Visual LISP ile hata kontrolü yazısının örnek kodudur. - Muharrem KOÇYİĞİT
Programda kullanılan VisualLisp komutları:
vl-catch-all-error-p,vl-catch-all-apply,vl-catch-all-error-message
İlgili Yazılar:
Benzer Yazılar


