Delphi > Obecné

IBX komponenty a rekonexe k databazi, potazmo legalni ukonceni programu

(1/1)

Wormik:
Presel jsem z Delphi 7 na Delphi XE a zjistil ze IBX komponenty maji stejny problem jako v dobe D7  :'(  a to je pokud je otevrena konexe na databazi (firebird 2.5) dojde k preruseni komunikace (napr odpojeni/pripojeni k siti) tak IBX komponenty vygeneruji nekolik neosetrenych vyjimek, ktere vetsinou nejdou ani odchytnout, uzivatele nuti k jejich odklikani a do ukonceni aplikace nejde uz novu s IBX nic delat... Proto se ptam jestli nedelam neco spatne divim ze ze by takovy zasadni BUG prezil az do dnes? :-\

yamaco:
Zdravím, osobně jsem IBX komponenty přestal používat před mnoha lety právě kvůli jejich chybovosti a "nevývoji". Ve všech svých aplikacích používám FIB Plus sadu (prokazatelně rychlejší přístup k datům než via IBX, řada nových užitečných metod) a kvalitní je i sada od Devartu (využívám jejich analogie pro MS SQL a Oracle).

Mi.Chal.:

--- Citace: Wormik  16-06-2012, 14:43:20 ---tak IBX komponenty vygeneruji nekolik neosetrenych vyjimek, ktere vetsinou nejdou ani odchytnout, uzivatele nuti k jejich odklikani

--- Konce citace ---

něco podobného dělal třeba i standardní TClientSocket. U něj se to dalo vyřešit tak, že se odchytil nějaký jejich speciální event (OnError nebo tak nějak) a nastavil se errorCode na 0. Třeba to bude podobné?


--- Citace: Wormik  16-06-2012, 14:43:20 ---a do ukonceni aplikace nejde uz novu s IBX nic delat... Proto se ptam jestli nedelam neco spatne divim ze ze by takovy zasadni BUG prezil az do dnes? :-\

--- Konce citace ---

podobně blbě se standardně chovaly TAdoQuery/TAdoConnection a spol. Ty zase mají nějaký parametr, který určuje, jestli se má připojení držet otevřené (jinak se to připojuje pokaždé znovu a je to pomalejší). V případě výpadku spojení se to už ale nebylo schopné připojit. Řešením bylo vypnout tu property (něco jako KeepConnection) a po úspěšném připojení zase nastavit.

Navigace

[0] Seznam témat

Přejít na plnou verzi