Try - Exception Sorunları

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
fearless
Üye
Mesajlar: 15
Kayıt: 26 Kas 2005 10:15

Try - Exception Sorunları

Mesaj gönderen fearless »

Arkadaşlar
Table ı open yaparken try except bloğu kullanıyorum ve istisna oldugunda bir hata msg ı cıkartıyorum. Ancak
1-) hata oldugunda hem benim hata mesajın cıkıyor hemde baska bır hata mesajı cıkıyor. bu ıkıncı mesajı nasıl engelleyebılırım ? Kullandığım Kod Şu Şekilde;

Try
Table.Open;
Except
on E: Exception do
Showmessage('bıdıbıdı'+E.Message );
end;



Bu Kod sonucunda hem benim belirlediğim msj cıkıyor hemde Table: "Cannot Perform this operation on a closed dataset" diye msg veriyor. Hata mesajının içeriği önemli değil önemli olan bu hata nın cıkmaması bunu nasıl sağlıyabılırım ?

2. sorum ise bu istsina msjını örneğin bir formda verıyor. ve ben istisna olunca sozkonusu formu kapatmak ıstıyorum except bloguna form1.close dediğimde program hata verıyor ve çalışmıyor

Except
on E: Exception do
Showmessage('bıdıbıdı'+E.Message );
Form1.Close // Burda Hata Veriyor

ben bu except kod blogunda soz konusu forumu nasıl kapatabılırım.

Sorularıma Cevap verirseniz cok sevınırım.
İyi Çalışmalar
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Mesaj gönderen vkamadan »

Merhaba ,
1. Sorunuz ;
Kendi mesajınızı haricinde derleyici mesajını delphi ortamında alırısınız EXE yi dışarıdan çalıştırdığınızda sadece sizin mesaj görüntülenir Delphi ortamındada korunmuş bloklarda oluşan istisnaları görmek istemiyorsanız Tools / Debugger Options / Language EXceptions sekemesinde yer alan , Stop on Delphi Exceptions seçeneğini de-aktif duruma getirmelisiniz.

2.Sorunuz ;

Kod: Tümünü seç

Except on E: Exception Do0
dedikten sonra eğer bir satırdan fazla kod icra edilecekse begin end arasına alınmalıdır yani kodunuz ,

Kod: Tümünü seç

try
..
..
Except
on E: Exception do
begin
Showmessage('bıdıbıdı'+E.Message );
Form1.Close // Burda Hata Veriyor 
end;
end;
şeklinde olmalıdır. iyi çalışmalar.
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
ek olarak eğer bu kodları formun onshow olayına yazdıysanız on show olayında close komutu çalışmaz.
kolaygelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Glen
Üye
Mesajlar: 277
Kayıt: 12 Eki 2005 11:58

Mesaj gönderen Glen »

Showmessage('bıdıbıdı'+E.Message );

demi$sin.. Burada zaten E.Message delphinin cikardi hata.. yani bunu $u $ekil de yapabilirsn...

Try
..
..
..
Except
On E: Exception do
begin
if Pos('xxxxxx',E.Message) <> 0 then
ShowMessage('xxxxxxx hatasina kar$i kendi mesajim');
end;
end;
Cevapla