Autor Beitrag
Bernhard138
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mo 05.07.10 07:27 
Hallo zusammen,

ich arbeite seit längerer Zeit an einer Software für den medizinischen Bereich, das seit ein paar Jahren bei uns (Institut für Pathologie einer Uniklinik) im Einsatz ist und soweit gut funktioniert. Das Programm ist so eine Art Mehrzwecktool für alle möglichen Aufgaben, mit denen sich ein Pathologe täglich beschäftigen muss (z.B. Diagnosekodierung, Tumorklassifikation) und außerdem eine Datenbank mit Informationen die man im Alltag so braucht (PDF-Files, Textdokumente, Bilder). Über die Jahre ist das Programm sehr umfänglich geworden und zunehmend kommt es jetzt beim Schließen des Programms zu kryptischen "Access Violations", ein unter Delphi bekanntes Problem. Mir ist schon klar, das das irgendwas mit dem Zugriff auf Komponenten zu tun hat, die bereits zerstört sind, nur wüsste ich nicht, welche das sein sollte. Verwende z.B. gleich mehrere AcroPDF- und Graphics32-Fenster in meinem Programm. Vielleicht spielt auch die Tatsache eine Rolle, das viele der Daten auf Netzlaufwerken liegen, was eine gewisse Trägheit zur Folge hat.
Habe schon alles mögliche ausprobiert, der Fehler tritt immer wieder, wenn auch nicht regelmäßig, auf. Gibt es die Möglichkeit, Fehlermeldungen beim Schließen grundsätzlich zu unterbinden (Holzhammermethode)?

Danke für jegliche Hilfe,
Bernhard
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8554
Erhaltene Danke: 481

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Mo 05.07.10 07:42 
Klar, man kann um alles einen try...except-Block mit leerem except-Teil packen. Das ist aber eine sehr schlechte Idee. Probier lieber, der Ursache des Fehlers auf die Spur zu kommen, z.B. mit madexcept. Einfach installieren, und in Delphi unter Projekt -> madexcept-Settings das Ding aktivieren. Wenn der Fehler dann auftritt, bekommst du in der regel eine recht genaue Angabe (Prozedur mit Zeilennummer), wo der Fehler auftritt. :)

_________________
We are, we were and will not be.

Für diesen Beitrag haben gedankt: Bernhard138